不精通JS的話,直接上手小程序還是有點吃力。坑需要一個個去排,唉,說多了都是淚。
小程序用定時器隨機輸出數組內容。
data: {
buttonText: '開始',
time1: ''"
}
sendNum: function (arr) {
return arr[Math.floor(Math.random() * arr.length)];
},//這個函數是隨機獲取數組某個內容,random()方法只能獲取0-1之間的數,但是獲取不到1,所以用個floor方法,向下取整數。
//下面是按鈕方法,當點擊開始的時候,執行定時器,定時調用sendNum方法獲取數組中的隨機數,同時讓按鈕開始更改為停止,當點停止的時候清除計時器。特別注意,定時器是全局變量,所以一定要在全局設一個變量保存定時器的ID,我這邊是只接在data里面設了個變量。
timeTest: function () {
var that = this
var time1 = that.data.time1
var buttonText = that.data.buttonText
var arr = ['1', '2', '3', '4', '5', '6']
if(buttonText=='開始'){
time1 = setInterval(function () {
console.log(that.sendNum(arr))
that.setData({
buttonText: '停止',
time1: time1
})
},200)
}else{
that.setData({
buttonText: '開始',
})
clearInterval(time1)
}
},
wxml
<button bindtap="timeTest">{{buttonText}}</button>