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() { // #if MP return { title: this.data.rankingType == 3 ? '我要上热门,就差你的一个赞,快来帮帮我吧!' : '这个小程序太赞了!孩子朗读能力蹭蹭上涨,推荐你试试!', path: `/pages/index/index?uid=${wx.getStorageSync('uid')}`, imageUrl: this.data.rankingType == 3 ? '/static/375-300-3.jpg' : '/static/375-300-2.jpg' } // #elif ANDROID return { title: this.data.rankingType == 3 ? '我要上热门,就差你的一个赞,快来帮帮我吧!' : '这个小程序太赞了!孩子朗读能力蹭蹭上涨,推荐你试试!', userName: 'gh_50f61361ad1d', path: `/pages/index/index?uid=${wx.getStorageSync('uid')}`, imagePath: this.data.rankingType == 3 ? '/static/375-300-3.jpg' : '/static/375-300-2.jpg', webpageUrl: 'http://www.efunbox.cn', withShareTicket: true, miniprogramType: 1, scene: 0, } // #endif } })