uniapp验证码倒计时如何实现前端
时间: 2023-05-22 22:04:54 浏览: 155
Uniapp 验证码倒计时可以通过一个定时器和 button 的 disabled 属性来实现。具体步骤如下:
1. 在 Vue 的 data 中声明一个变量用来存储倒计时的时间,比如 countdown: 60。
2. 在需要使用验证码倒计时的按钮上添加一个 disabled 属性,并绑定 countdown 变量,如下所示:
<button disabled="{{countdown > 0}}" @click="sendVerificationCode">获取验证码</button>
3. 在 sendVerificationCode 方法中先判断 countdown 是否大于 0,如果大于 0 就直接返回,不进行下一步操作。如果 countdown 小于等于 0,则开始倒计时并发送验证码:
sendVerificationCode() {
if (this.countdown > 0) {
return;
}
// 发送验证码的逻辑
this.countdown = 60;
const timer = setInterval(() => {
if (this.countdown <= 0) {
clearInterval(timer);
return;
}
this.countdown--;
}, 1000);
}
4. 在倒计时过程中禁用按钮,倒计时结束后解除禁用:
<button :disabled="countdown > 0" @click="">{{countdown > 0 ? `${countdown} 秒后重新获取` : '获取验证码'}}</button>
阅读全文