// pages/test/test.js const app = getApp() var W var wrongLists Page({ /** * 页面的初始数据 */ data: { index: 0, realIndex: 0, questionCount: 0, optionCount: 0, wrong: 0, myoption: ["A", "B", "C", "D", "E", "F"], isSelected: false, questionArrays: [], answerArrays1: ["A", "B", "C"], //三个选项题目乱序前的数组 answerArrays2: ["A", "B", "C", "D"], //四个选项题目乱序前的数组 answerArrays3: ["A", "B", "C", "D", "E", "F"], //六个选项题目乱序前的数组 setColor: "green", icon: ["circle", "circle", "circle", "circle", "circle", "circle"], wrongList:[], count:20 //显示多少道题目 }, //乱序算法 randSort: function () { return Math.random() > 0.5 ? 1 : -1; }, //对数组乱序 setList: function () { var newList = this.data.questionArrays.sort(this.randSort); this.setData({ list: newList, }); }, //对三个选项乱序 setOption1: function () { var newOption1 = this.data.answerArrays1.sort(this.randSort); this.setData({ answerArrays1: newOption1 }) }, //对四个选项乱序 setOption2: function () { var newOption2 = this.data.answerArrays2.sort(this.randSort); this.setData({ answerArrays2: newOption2 }) }, //对六个选项乱序 setOption3: function () { var newOption3 = this.data.answerArrays3.sort(this.randSort); this.setData({ answerArrays3: newOption3 }) }, //点击选项触发函数 select: function (event) { setTimeout(function () { this.setData({ icon: ["circle", "circle", "circle", "circle", "circle", "circle"] }) }.bind(this), 200); var value = event.currentTarget.dataset.value; var chooseOption = event.currentTarget.dataset.option; var trueOption = app.globalData.questions[this.data.realIndex].true; var trueVaule = app.globalData.questions[this.data.realIndex].option[trueOption]; console.log("选择的选项是:" + chooseOption + " 选择的值:" + value); console.log("本题乱序前的选项是:" + trueOption + " 值是:" + trueVaule); if (value != trueVaule) { var icons = ["circle", "circle", "circle", "circle", "circle", "circle"]; var tmp= {"order":"","trueOption":"","wrongOption":""}; icons[chooseOption] = "cancel"; tmp.order = this.data.realIndex; tmp.trueOption = trueOption; tmp.wrongOption = this.data.myoption[chooseOption]; console.log(tmp); wrongLists.push(tmp); console.log(wrongLists); this.setData({ icon: icons, wrong: this.data.wrong + 1, wrongList: wrongLists }) console.log("order---:"+this.data.wrongList[0].order); W = JSON.stringify(this.data.wrongList) } else { var icons = ["circle", "circle", "circle", "circle", "circle", "circle"]; icons[chooseOption] = "success"; this.setData({ icon: icons }) } if (this.data.index < this.data.count - 1) { this.setData({ isSelected: false, index: this.data.index + 1, }) this.setData({ realIndex: this.data.questionArrays[this.data.index] }) this.setData({ //questionDetail: app.globalData.questions[this.data.realIndex].question, options: app.globalData.questions[this.data.realIndex].option, questionImage: app.globalData.questions[this.data.realIndex].question, optionnumber: app.globalData.questions[this.data.realIndex].number }) // console.log("选择后的index:" + this.data.index); // console.log("选择后的realIndex:" + this.data.realIndex); } else { var aw1 = JSON.stringify(this.data.answerArrays1), aw2 = JSON.stringify(this.data.answerArrays2), aw3 = JSON.stringify(this.data.answerArrays3); wx.navigateTo({ url: '/pages/result/result?wrong=' + this.data.wrong + '&wrongList=' + W + '&answerArrays1=' + aw1 + '&answerArrays2=' + aw2 + '&answerArrays3=' + aw3 }) } }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { //设置标题 wx.setNavigationBarTitle({ title: "答题区" }) wrongLists = []; //在js中初始化一个数组,数组里存储正序的题号。这里题号从1开始 this.setData({ questionCount: app.globalData.questions.length }) var questionArray = []; for (var i = 0; i < this.data.questionCount; i++) { questionArray.push(i); } this.setData({ questionArrays: questionArray, }) //乱序题号数组、选项数组 this.setList(); console.log("乱序后的题号数组:" + this.data.questionArrays) this.setOption1(); this.setOption2(); this.setOption3(); console.log("乱序后的选项数组:" + this.data.answerArrays1 + "\n" + this.data.answerArrays2 + "\n" + this.data.answerArrays3) //初始化第一个题目 this.setData({ realIndex: this.data.questionArrays[this.data.index] }) console.log("onLoad时的index:" + this.data.index); console.log("onLoad时的realIndex:" + this.data.realIndex); this.setData({ //questionDetail: app.globalData.questions[this.data.realIndex].question, options: app.globalData.questions[this.data.realIndex].option, questionImage: app.globalData.questions[this.data.realIndex].question, optionnumber: app.globalData.questions[this.data.realIndex].number }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { } })