const app = getApp() Page({ allnavData: [ { text: "全部", exercise_status: "all", course_identities: [2, 5, 6] }, { text: "未发布", exercise_status: 1, course_identities: [2] }, { text: '提交中', exercise_status: 2, course_identities: [2, 5, 6] }, { text: '已截止', exercise_status: 3, course_identities: [2, 5, 6] }, ], data: { loading: true, require_login: false, page_status: 0, // 0=>loading 1=>success 2=>fail exercises: [], navData: [ { text: "全部", exercise_status: "all", course_identities: [2, 5, 6] }, { text: '提交中', exercise_status: 2, course_identities: [2, 5, 6] }, { text: '已截止', exercise_status: 3, course_identities: [2, 5, 6] }, { text: "未发布", exercise_status: 1, course_identities: [2] }, ], currentTab: 0, navScrollLeft: 0 }, exercise_result: function ({ currentTarget: { dataset } }){ wx.navigateTo({ url: `../exercise_result/exercise_result?exercise_id=${dataset.exercise_id}`, }) }, see_grade: function({currentTarget:{dataset}}){ wx.navigateTo({ url: `../exercise_grade/exercise_grade?exercise_id=${dataset.exercise_id}`, }) }, edit_exercise: function({currentTarget:{dataset}}){ wx.navigateTo({ url: `../exercise_setting/exercise_setting?course_id=${this.course_id}&exercise_id=${dataset.exercise_id}`, }) }, create_exercise: function(){ wx.navigateTo({ url: `../exercise_setting/exercise_setting?course_id=${this.course_id}`, }) }, pull_courses_info: function(){ app.client.get_user_info() .then(); /**@todo */ }, pull_exercise: function(){ app.client.search_exercises({ course_id: this.course_id }) .then(res => { console.log("pull_exercise"); console.log(res); if(res.data.exercises){ this.setData({exercises: res.data.exercises, loading: false}); }else if(res.data.status==401){ this.setData({require_login: true}); wx.showToast({ title: '请登陆后重试', icon: "none" }); } console.log(this.data) }) .catch(error=>{ console.error(error); wx.showToast({ title: error.toString(), icon: "none", duration: 5000 }) }); }, see_exercise: function ({ currentTarget: { dataset } }){ wx.navigateTo({ url: '../exercise/exercise?exercise_id=' + dataset.exercise_id, }); }, enter_exercise: function({currentTarget:{dataset}}){ wx.showModal({ title: '确认', content: '开始作答吗?', success: res=>{ if(res.confirm){ wx.navigateTo({ url: '../exercise/exercise?exercise_id='+dataset.exercise_id, }); } } }); }, //事件处理函数 onLoad: function (options) { this.course_id = options.id; app.client.get_course_info({course_id: this.course_id}) .then(res=>{ this.setData({course:res.data}) console.log(res) }) }, onShow: function(){ this.setData({require_login: false}); this.pull_exercise(); }, switchNav(event) { var cur = event.currentTarget.dataset.current; //每个tab选项宽度占1/5 var singleNavWidth = this.data.windowWidth / 3; //tab选项居中 this.setData({ navScrollLeft: (cur - 1) * singleNavWidth }) if (this.data.currentTab == cur) { return false; } else { this.setData({ currentTab: cur }) } }, switchTab(event) { var cur = event.detail.current; var singleNavWidth = this.data.windowWidth / 5; this.setData({ currentTab: cur, navScrollLeft: (cur - 1) * singleNavWidth }); }, onPullDownRefresh: function(){ this.pull_exercise(); }, onShareAppMessage:function(){ } })