import { getRankingData, getRankedDay } from '~/api/global' import event from '~/mixins/event' Page({ behaviors: [event], /** * 页面的初始数据 */ data: { userList: [], ranking: '', //2:邀新榜,3:热播榜,4:挑战pk榜 rankingType: '', icon: '', podiumBoxBg: '', historyList: [], selector: { currentDay: '', next: true, previous: true, }, backgroundColor: '' }, /** * 生命周期函数--监听页面加载 */ async onLoad(options) { let historyList = await getRankedDay() this.setData({ historyList, selector: { currentDay: historyList.length - 1, next: false, previous: historyList.length - 1 > 0 } }, () => { this.getRankInfo(options) }) }, async getRankInfo(options) { let backgroundColor = options.type == '2' ? '#50AE75' : options.type == '3' ? '#FF7E6C' : '#8468FA'; this.setData({ rankingType: options.type, icon: options.type == '2' ? '/static/yx.png' : options.type == '3' ? '/static/play.png' : '/static/win.png', podiumBoxBg: options.type == '2' ? 'invitation' : options.type == '3' ? 'hot' : 'pk', backgroundColor }) wx.setNavigationBarColor({ frontColor: '#ffffff', backgroundColor }) let { userList, ranking } = await getRankingData({ type: options.type, day: this.data.historyList[this.data.selector.currentDay] }) this.setData({ userList, ranking }) }, switchType({ target }) { let rankingType = target.dataset.type if (rankingType && rankingType != this.data.rankingType) { this.getRankInfo({ type: rankingType }) } }, bindDateChange({ currentTarget }) { let type = currentTarget.dataset.type let currentDay = this.data.selector.currentDay if (type == 'next' && currentDay < this.data.historyList.length - 1) { currentDay = ++currentDay } else if (type == 'previous' && currentDay > 0) { currentDay = --currentDay } this.setData({ selector: { currentDay, next: currentDay < this.data.historyList.length - 1, previous: currentDay > 0 } }) this.getRankInfo({ type: this.data.rankingType }) }, jumpIndex() { wx.switchTab({ url: '/pages/index/index', }) }, jumpUserInfo({ currentTarget }) { if (!currentTarget.dataset.uid) { return } wx.navigateTo({ url: `/pages/personal/index?uid=${currentTarget.dataset.uid}&type=${this.data.rankingType==4?'pk':'user'}`, }) }, onShareAppMessage() { return { title: this.data.rankingType == 3 ? '我要上热门,就差你的一个赞,快来帮帮我吧!' : '这个小程序太赞了!孩子朗读能力蹭蹭上涨,推荐你试试!', path: `/pages/index/index?uid=${wx.getStorageSync('uid')}`, imageUrl: this.data.rankingType == 3 ? 'http://reader-wx.ai160.com/images/reader/v3/375-300-3.jpg' : 'http://reader-wx.ai160.com/images/reader/v3/375-300-2.jpg' } } })