<div v-if="show == 0" @click="getcode">获取验证码</div>
<div v-if="show == 1">已发送{{count}}秒</div>
<div v-if="show == 2" @click="getcode">重新获取</div>
new Vue({
el: '#app',
data() {
return {
show: 0,
count: '',
timer: null,
}
},
methods: {
getcode(){
const times = 60; // 倒计时时间
if (!this.timer) {
this.count = times;
this.show = 1;
this.timer = setInterval(() => {
if (this.count > 0 && this.count <= times) {
this.count--;
} else {
this.show = 2;
clearInterval(this.timer);
this.timer = null;
}
}, 1000)
}
}
}