vue中定时器设置和关闭页面时关闭定时器

我看了别人写的博客关于设置和清除定时器都比较复杂,我感觉其实很简单的几行代码就好。把我的写法记录一下。

methods中

setTime() { //设置定时器
  this.clearTimeSet=setInterval(() => {
    this.webSocketClientOnopen();
  }, 1000);
},

clearTime() { //清除定时器
  clearInterval(this.clearTimeSet);
}

mounted 中

mounted : { //页面加载完毕就开始加载定时器
  this.setTime();
}
beforeDestroy() {    //页面关闭时清除定时器  
  clearInterval(this.clearTimeSet);
},

还有在tab页面加定时器和销毁定时器

stro() { //主页A
            this.timeClss = setInterval(() => {
                this.getFirstList()
            }, 5 * 100)
        },
        twosli() {// 主页B
            this.times =  setInterval(() => {
                this.getThirdList()
            }, 5 * 100)
        },
        clearTime() { // 主页A 清除
            clearInterval(this.timeClss)
        },
        clearcloss() { // 主页B 清除
            clearInterval(this.times)
        },
 handleClick(tab, event) { // 每个tab点击切换的函数方法
            if(tab.label == '主页A'){
                this.getFirstList()
                this.stro() 
                this.clearcloss()
            }else if(tab.label == '工单A'){
                this.getSecList()
                this.clearTime()
                this.clearcloss()
            }else if(tab.label == '主页B'){
                this.getThirdList()
                this.twosli()
                this.clearTime()
            }else if(tab.label == '工单B'){
                this.getFourList()
                this.clearcloss()
                this.clearTime()
            }
        }

首先,把定时器和清除定时器的方法分别写成函数方法,然后在handleClick方法中当要切换tab的时候,在不需要的tab选项卡里调用定时器和清除定时器的方法就好了,这个就可以清除或设置定时器了!

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奋斗的小鸟鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值