vue5分钟倒计时点击按钮停止计时否则循环5分钟倒计时
您可以使用Vue的计时器方法setInterval来实现5分钟倒计时,并通过点击按钮来停止计时。
首先,在Vue的data中定义一个计时器变量timer,将其初始值设为null。然后,使用mounted钩子在组件实例创建完成后启动计时器。
在mounted钩子中,使用setInterval方法设置一个每秒执行一次的函数,该函数每次执行时将timer的值减1。当timer的值减到0时,表示倒计时结束,可以执行相应的操作(例如重新开始倒计时)。
在模板中,使用插值表达式显示倒计时的值。同时,添加一个按钮,并绑定一个点击事件stopTimer。在点击事件中,清除计时器,将timer的值设为null,即可停止计时。
下面是一个简单的示例代码:
<template>
<div>
<h1>{{ timer }}</h1>
<button @click="stopTimer">停止计时</button>
</div>
</template>
<script>
export default {
data() {
return {
timer: null,
};
},
mounted() {
this.startTimer();
},
methods: {
startTimer() {
this.timer = 300; // 5分钟,每次减1,共300秒
// 每秒执行一次
setInterval(() => {
this.timer--;
if (this.timer === 0) {
// 倒计时结束,可以执行相应的操作
this.startTimer(); // 重新开始倒计时
}
}, 1000);
},
stopTimer() {
clearInterval(this.timer);
this.timer = null;
},
},
};
</script>
这样,每次页面加载时都会启动一个5分钟的倒计时,点击按钮可以停止计时,倒计时结束后会重新开始倒计时
原文地址: http://www.cveoy.top/t/topic/h1MY 著作权归作者所有。请勿转载和采集!