代码
<button :disabled="disabled" class="getCode" :style="{
'color':getCodeBtnColor}" @click.stop="getCode()">{
{getCodeText}}
</button>
data() {
return {
getCodeText: '获取验证码',
getCodeBtnColor: "#ffffff",
getCodeisWaiting: false,
disabled:false
}
},
Timer() {
},
getCode() {
this.disabled = true
this.getCodeText = "发送中..."
this.getCodeisWaiting = true;
this.getCodeBtnColor = "rgba(255,255,255,0.5)"
setTimeout(() => {
uni.showToast({
title: '验证码已发送',
icon: "none"
});
this.setTimer();
}, 1000)
},
setTimer() {
let holdTime = 60;
this.getCodeText = "重新获取(60)"
this.Timer = setInterval(() => {
if (holdTime <= 0) {
this.disabled = false
this.getCodeisWaiting = false;
this.getCodeBtnColor = "#ffffff";
this.getCodeText = "获取验证码"
clearInterval(this.Timer);
return;
}
this.getCodeText = "重新获取(" + holdTime + ")"
holdTime--;
}, 1000)
}