原生JavaScript前端短信驗(yàn)證碼之vue實(shí)踐方案


原生JavaScript前端短信驗(yàn)證碼之vue實(shí)踐方案,可以應(yīng)用于多場(chǎng)景

/**

?*

?*?@param?{*}?e?要操作的dom

?*?@param?{*}?callBack?處理發(fā)送驗(yàn)證碼的邏輯

?*?@param?{*}?num?幾秒后可以重新獲取

?*?@param?{*}?delay?多少秒掉一次

?*/

export?const?sendCode?=?(e,?callBack,?num?=?10,?delay?=?1000)?=>?{

????var?target?=?e.target?||?e.srcElement;

????let?timer?=?null;

????target.disabled?=?true;

????target.innerHTML?=?`${num}秒后可重新獲取`;

????callBack();

????timer?=?setInterval(()?=>?{

????????num--;

????????if(num?>?0)?{

????????????target.innerHTML?=?`${num}秒后可重新獲取`;

????????}else{

????????????clearInterval(timer);

????????????target.disabled?=?false;

????????????target.innerHTML?=?`點(diǎn)擊發(fā)送驗(yàn)證碼`;

????????????num?=?num;

????????}

????},?delay)

}

使用方式:

import?{?sendCode?}?from?'./utils.js'

<button?@click="sendCodeBtn($event)">發(fā)送驗(yàn)證碼</button>

methods:?{

????sendCodeBtn(e)?{

??????sendCode(e,?()?=>?{

????????console.log('調(diào)用后臺(tái)發(fā)送驗(yàn)證碼的接口邏輯處理')

??????},?20)

????}

??}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容