vue 獲取驗證碼倒計時


html部分

<div class="form-code">
  <input type="number" v-model="codeVer" placeholder="請輸入驗證碼" />
  <button type="button" @click="getCode()" :class="{on:showBtnOn}" v-text="codeText"></button>
</div>
codeText按鈕上顯示的文字;
getCode為按鈕點擊事件;
codeVer為驗證碼;
showBtnOn:是否添加button上的class on

css部分,按鈕點擊的時候給一個灰色背景:

.form-code button.on{background-color:#999}

在date中定義雙向綁定的部分

data: {
  howBtnOn:false,
  codeVer:'',
  codeText:'獲取驗證碼'
},    

點擊方法getCode開始倒計時:

var time = 60;
var timer = setInterval(function(){
  time--;
  vm.codeText = time+"秒重發"
  vm.showBtnOn = true;
  
  //time==0 時,倒計時結束,按鈕切換為原來的顏色,清除定時器
  if(time==0){     clearInterval(timer);     vm.codeText = "獲取驗證碼";     vm.showBtnOn = false;   } },1000);

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM