您可以使用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分钟的倒计时,点击按钮可以停止计时,倒计时结束后会重新开始倒计时

vue5分钟倒计时点击按钮停止计时否则循环5分钟倒计时

原文地址: http://www.cveoy.top/t/topic/h1MY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录