题目要求:
题目要求
代码实现:
使用 setInterval
(setInterval是一个实现定时调用的函数,可按照指定的周期(以毫秒计)来调用函数或计算表达式。setInterval方法会不停地调用函数,直到 clearInterval被调用或窗口被关闭。),可以轻松实现计时执行函数的功能,注意绑定匿名函数时,使用bind
绑定函数作用域(如果不进行绑定,匿名函数里的this
就不是指代小程序页面,无法调用 this.setData
):
Page({
data: {
list: []
},
onReady: function () {
let item = ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期日'];
let interval = setInterval(function () {
this.data.list.unshift(item.pop());
this.setData(this.data);
if (!item.length) {
clearInterval(interval);
}
}.bind(this), 5000);
}
});
注意点:
不绑定wx:key
属性,然后在页面输出的过程中,勾选 星期日
,间隔5秒后追加数据时, 勾选变成正在生成的第一个checkbox。
index.wxml文件
为wx:for
绑定wx:key="*this"
,再重复上一步的操作,在页面输出的过程中,勾选状态不变。
index.js文件