// pages/lianxi/main.js const api = require("../../utils/request.js"); var util = require('../../utils/util.js') Page({ /** * 页面的初始数据 */ data: { ctms: [], tm_index: 0, isright:false, answerP:false, tmtotal:0, moShi:'看题模式', isTest:true, domain:getApp().globalData.mediahost, }, radioChange: function (e) { var that = this that.data.currentTm['user_answer'] = e.detail.value that.data.ctms[that.data.tm_index] = that.data.currentTm that.showAnswer() }, checkboxChange: function (e) { var that = this that.data.currentTm['user_answer'] = e.detail.value that.data.ctms[that.data.tm_index] = that.data.currentTm }, /** * 生命周期函数--监听页面加载 */ onLoad: function () { var that = this try { var value = wx.getStorageSync('ctms') if (value) { that.data.ctms = value that.setData({ tmtotal: value.length }) } } catch (e) { } try { const res = wx.getSystemInfoSync() that.setData({ scrollHeight: res.windowHeight - 70 }) } catch (e) { } if (that.data.tmtotal== 0) { wx.showModal({ title: '提示', content: '无错题记录!', confirmText:'返回', cancelText:'前去练习', success: function (res) { if (res.confirm) { wx.navigateBack({ }) }else{ wx.redirectTo({ url: '/pages/lianxi/index', }) } } }) }else{ that.showTm(that.data.tm_index) } }, onUnload: function () { try { wx.setStorageSync('ctms', this.data.ctms) } catch (e) { } }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, showTm: function (index) { var that = this var currentTm = that.data.ctms[index] that.setData({ 'tm_index': index, 'tmtotal':that.data.ctms.length, 'currentTm': currentTm }) that.showOptions() if (currentTm.user_answer && !that.data.isTest) { that.showAnswer() } }, panTi: function () { var that = this let currentTm = that.data.currentTm let isright = false if (currentTm.type == '多选') { if (currentTm.user_answer) { if (currentTm.user_answer.sort().toString() == currentTm.right.sort().toString()) { isright = true } } } else { isright = currentTm.right == currentTm.user_answer } return isright }, showAnswer: function () { let isright = this.panTi() this.setData({ isright: isright, answerP: true, currentTm: this.data.currentTm }) }, changeM: function () { var that = this; if(that.data.isTest){ that.setData({ isTest:false, }) that.showOptions() }else{ that.setData({ isTest:true, answerP:false }) } }, next: function () { var that = this var tm_index = that.data.tm_index + 1 that.showTm(tm_index) that.setData({ answerP:false }) }, previous: function () { var that = this var tm_index = that.data.tm_index - 1 that.showTm(tm_index) that.setData({ answerP:false }) }, showOptions: function () { let currentTm = this.data.currentTm let options = [] for (let key in currentTm.options) { let option = {} option.key = key option.value = '
' + currentTm.options[key].toString() + '
' if (currentTm.user_answer && this.data.moShi == '看题模式') { if (key == currentTm.user_answer || currentTm.user_answer.indexOf(key) != -1) { option.checked = true } } else { option.checked = false } options.push(option) } this.setData({ options: options }) }, remove: function () { var that = this var index = that.data.tm_index that.data.ctms.splice(index,1) if(that.data.ctms.length>index){ that.showTm(index) } else if (that.data.ctms.length > 0 && index > 1){ that.showTm(index-1) } else{ wx.navigateBack({ }) } } })