您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“小程序怎么實(shí)現(xiàn)倒計(jì)時(shí)功能”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“小程序怎么實(shí)現(xiàn)倒計(jì)時(shí)功能”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識(shí)吧。
倒計(jì)時(shí)功能是一個(gè)比較常見的功能,比如用戶獲取驗(yàn)證碼就需要用到。這里記錄一下在微信小程序里面倒計(jì)時(shí)功能的簡單實(shí)現(xiàn)
直接看看代碼吧
//倒計(jì)時(shí)60秒
function countDown(that,count) {
if (count == 0) {
that.setData({
timeCountDownTop: '獲取驗(yàn)證碼',
counting:false
})
return;
}
that.setData({
counting:true,
timeCountDownTop: count + '秒后重新獲取',
})
setTimeout(function(){
count--;
countDown(that, count);
}, 1000);
}1234567891011121314151617181920
在需要倒計(jì)時(shí)的地方調(diào)用
Page({
data:{
counting:false
},
//生成驗(yàn)證碼
generateVerifyCode:function() {
var that = this;
if (!that.data.counting) {
wx.showToast({
title: '驗(yàn)證碼已發(fā)送',
})
//開始倒計(jì)時(shí)60秒
countDown(that, 60);
}
},
})123456789101112131415161718
下面簡單介紹下功能的實(shí)現(xiàn)
首先倒計(jì)時(shí)的方法是寫在Page的外面,這個(gè)別搞錯(cuò)了
實(shí)現(xiàn)倒計(jì)時(shí)關(guān)鍵的地方在于setTimeout方法,也即下面這段代碼。setTimeout方法可以設(shè)置在指定的時(shí)間間隔執(zhí)行某個(gè)函數(shù)。應(yīng)用的格式是setTimeout(function(),time),function就是對(duì)應(yīng)要執(zhí)行的方法,time就是時(shí)間間隔,這里的1000表示1000毫秒,也就是間隔1秒執(zhí)行一次countDown方法。
setTimeout(function(){
count--;
countDown(that, count);
}, 1000);1234
countDown方法中利用count字段來設(shè)置倒計(jì)時(shí)的時(shí)間,比如這里是60秒
countDown方法中把that也傳遞進(jìn)去是為了在倒計(jì)時(shí)狀態(tài)改變時(shí)利用setData方法更新頁面
countDown方法中利用counting字段來判斷是否已經(jīng)在倒計(jì)時(shí)了,避免重復(fù)開始倒計(jì)時(shí)
倒計(jì)時(shí)結(jié)束是通過count來判斷,通過return直接退出
讀到這里,這篇“小程序怎么實(shí)現(xiàn)倒計(jì)時(shí)功能”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。