// pages/mistakes/mistakes.js const APIClient = require('../../utils/APIClient.js'); const login = require('../../utils/loginSchedule.js'); const util = require('../../utils/util.js'); Page({ /** * 页面的初始数据 */ data: { mistakesData: [], animationData: {}, exponentData: [], course: [{ title: '语文', flag:[] }, { title: '数学', flag: [] }], courseIndex: 0, flag: true, switchs: true, errorData: {}, loginType: 1 }, particulars: function ({ currentTarget }) { //console.log(currentTarget.dataset.flag, currentTarget.dataset.index); let flag = currentTarget.dataset.flag; let index = currentTarget.dataset.index; const ind = this.data.courseIndex; if(flag){ this.data.course[ind].flag[index] = false this.setData({ course: this.data.course }) } else { this.data.course[ind].flag[index] = true; this.setData({ course: this.data.course }) let contentId = this.data.mistakesData[index].questions.id; let grade = this.data.mistakesData[index].userQuestionResult.grade; login.getOpenidSessionKey(res => { APIClient.getStatisticsOpt({ uid: res.data.data.uid },{ contentId, grade, type: 'WRONG_QUESTION' }).success(res => { console.log('成功') }) }, (error) => { console.log(error) }); } }, /*tab切换*/ tab (e) { const index = e.currentTarget.dataset.index; this.setData({ courseIndex: index }) this.getmistakesData(index + 1) }, /* 创建动画并执行 */ util (height) { // 创建动画实例 var animation = wx.createAnimation({ duration: 200, //动画时长 timingFunction: "linear", //线性 delay: 0 //0则不延迟 }); this.animation = animation; animation.height(height).step(); this.setData({ animationData: animation.export() }) }, /*请求错题数据*/ getmistakesData: function (category) { login.getOpenidSessionKey(res => { APIClient.getErrorsSchedule({ uid: res.data.data.uid },{ pageNo: 1, pageSize: 1000, category }).success(res => { console.log(res.data.data.list) this.setData({ mistakesData: res.data.data.list }) for(let item of res.data.data.list) { this.data.course[category-1].flag.push(false); } this.setData({ course: this.data.course }) }) //用户答题指数 APIClient.getExponentSchedule({ uid: res.data.data.uid }).success(res => { console.log(res); this.setData({ exponentData: res.data.data }) }) }, () => { this.setData({ flag: !this.data.flag }) }, this.data.loginType); }, closeDialog: function () { this.setData({ switchs: true }) }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { if(options.type == "noTv") { this.setData({ loginType: "" }) } const qid = util.convertObject(decodeURIComponent(options.scene)).i || ''; console.log('qid:' + qid); if(qid) { APIClient.getScheduleErr(qid).success(res => { this.setData({ errorData: res.data.data }) this.setData({ switchs: false }) }).fail(res => { console.log(res) }) } }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { this.getmistakesData(1) }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生命周期函数--监听页面卸载 */ onUnload: function () { }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh: function () { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom: function () { }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { }, /*获取个人信息弹框*/ jurisdiction: function () { this.setData({ flag: !this.data.flag }) this.onShow(); } })