// pages/createSub/createSub.js const app = getApp(); const $v = app.globalData.createInfo; Page({ /** * 页面的初始数据 */ data: { question: {}, confirm: true }, // 去单选页面 toRadio(e) { var types = e.currentTarget.dataset.type; wx.navigateTo({ url: '/pages/radio/radio?type=' + types, }) }, //去编辑页面 edit(e) { var index = e.currentTarget.dataset.index; wx.navigateTo({ url: '/pages/radio/radio?index=' + index, }) }, // 提交信息 submit() { if ($v.psqList.length == 0) { wx.showToast({ title: '你还没有创建题目', icon: "none", duration: 800 }); return; } this.setData({ confirm: false }) }, // 发布信息 publish() { app.res({ url: "psq/save", method: "POST", data: $v, callback: res => { $v.paper = {}; $v.psqList = []; wx.showModal({ title: '提示', content: '发布成功,跳转新建问卷', showCancel: false, success: res => { if (res.confirm) { wx.switchTab({ url: '/pages/creat/creat', success: function(e) { var page = getCurrentPages().pop(); if (page == undefined || page == null) return; page.onLoad(); } }) } } }) } }) }, returnEdit() { this.setData({ confirm: true }) }, /** * 生命周期函数--监听页面加载 */ onLoad: function(options) { var _m = "question"; this.setData({ [_m]: { "paper": { "title": "11", "des": "111" }, "psqList": [{ "isMust": 1, "type": 1, "question": "111", "answerslist": [{ "answer": "11" }, { "answer": "111" }, { "answer": "11" }, { "answer": "111" }], 'value': [] }, { "isMust": 1, "type": 1, "question": "11111", "answerslist": [{ "answer": "111" }, { "answer": "111" }], value: [] }, { "isMust": 1, "type": 0, "question": "11111" }, { "isMust": 0, "type": 1, "question": "wqwqw", "answerslist": [{ "answer": "qw" }, { "answer": "wqw" }, { "answer": "wqw" }] }] } }); }, onChange: function(e) { var index = e.currentTarget.dataset['index']; const { value } = e.detail; console.log('checkbox', e, '索引', index); const data = this.data.question.psqList[index].value || []; const idx = data.indexOf(value) const current = idx === -1 ? [...data, value] : data.filter((n) => n !== value) console.log('current', current); this.data.question.psqList[index].value = current this.setData({ question: this.data.question }) } })