微信小程序-实现换一换,刷新列表数据

效果:

微信小程序-实现换一换,刷新列表数据_第1张图片

 解决思路:

在数据允许范围内,选取四个随机数,然后对数据列表字段重新赋值。

实现:

1)在一次请求接口拿到列表所有数据时,把列表原始数据存储起来。

2)数据格式如下:

[{
ActType:"协会活动"
Act_Title:"烟花协会"
Act_id:"3636445707881152512"
ItemType:"1"
LOGOURL:"../upload/clubs/20190410161650_9dbda401-4b23-4d49-b5a6-aacd1ad08e00.png"
Plorder:0
Price:"100.00"
Title:""
},
{
ActType:"协会活动"
Act_Title:"文艺交流晚会"
Act_id:"3636445707881152512"
ItemType:"1"
LOGOURL:"../upload/clubs/20190410161650_9dbda401-4b23-4d49-b5a6-aacd1ad08e00.png"
Plorder:0
Price:"100.00"
Title:""
}
]

3)点击换一换,调用下面方法即可

  chooseEvent: function () {
    let maxNum = this.data.recomendEventRedis.length  //计算数据长度
    let r1 = parseInt(Math.random() * (maxNum - 0) + 0); //取【0-数据长度】内的整数随机数
    let r2 = parseInt(Math.random() * (maxNum - 0) + 0);
    let r3 = parseInt(Math.random() * (maxNum - 0) + 0);
    let r4 = parseInt(Math.random() * (maxNum - 0) + 0); 
    //务必先清空列表数据
    this.setData({
      recomendEvent: []
    })
    //重新取四组数据
    this.data.recomendEvent.push(this.data.recomendEventRedis[r1])
    this.data.recomendEvent.push(this.data.recomendEventRedis[r2])
    this.data.recomendEvent.push(this.data.recomendEventRedis[r3])
    this.data.recomendEvent.push(this.data.recomendEventRedis[r4])
    //重新赋值
    this.setData({
      recomendEvent: this.data.recomendEvent
    })
  },

 

你可能感兴趣的:(微信小程序)