vue项目使用定时器每隔几秒运行一次某方法

代码如下:

data() {
  return {
    timer:null, //定时器名称
  };
},
created() {
  this.setTime();
},
beforeDestroy() {
  clearInterval(this.timer);  // 清除定时器
  this.timer = null;
},
methods: {
  setTime(){
    //每隔一分钟运行一次保存方法
    this.timer = setInterval(()=>{
      this.heartBeat();
    },60000)
  },
  heartBeat(){
    axios.post("/api/member/ueditor/heartBeat",{}).then(res=>{
      if (res.code == '200') {
        console.log(res.body.result);
      }else{
        console.log("心跳停止");
      }
    })
  }
}

上面这样写已经实现功能,关闭页面不会继续执行。长时间运行页面也没有卡死。

posted @ 2023-04-18 14:05  岁月淡忘了谁  阅读(617)  评论(0编辑  收藏  举报