前端在做登录页面时,大多数都需要倒数计时
需求:点击获取验证码按钮,开始倒数,倒数时间60s,倒数到0秒后恢复获取验证码、如果获取验证码接口有误,中止倒数,显示获取验证码
样式:
先设置变量:
countdown: 60, // 倒计时
timer: null // 控制是否开始倒数
倒计时方法:
getCode() {
const TIME_COUNT = 60;
if (!this.timer) {
this.countdown = TIME_COUNT;
this.timer = setInterval(() => {
if (this.countdown > 0 && this.countdown <= TIME_COUNT) {
this.countdown--;
} else {
clearInterval(this.timer);
this.timer = null;
}
}, 1000);
}
}
因接口有误导致的关闭倒计时的方法:
// 关闭验证吗
closeCode() {
clearInterval(this.timer);
this.timer = null;
},