123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134 |
- 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
- }
- })
|