美文网首页
clearInterval无效,解决定时器关闭不掉的问题

clearInterval无效,解决定时器关闭不掉的问题

作者: 逸笛 | 来源:发表于2024-03-31 12:41 被阅读0次

1.环境问题,this.timer是我定义的定时器

如直接写clearInterval(this.timer);不好用,需要换成window.clearInterval(this.timer);

2.关闭指令执行的定时器源头问题,(最主要是这个原因)

如开启了多个定时器,再去清除定时器是无效的,因为无法定位到想清除的定时器上。

解决办法,将定时器归一

每次开启定时器时,判断一下定时器是否存在,这样万无一失。

开启:

if (!this.timer) {

this.timer= window.setInterval(() => {
    //执行内容

}, 10 * 1000);

}

停止关闭

if (this.timer) {
     window.clearInterval(this.timer);
     this.timer= null;
}

找不到原因(尽量不使用):

 for (let i = 0; i < 10000; i++) {
                //     clearInterval(i)
                // }

相关文章

网友评论

      本文标题:clearInterval无效,解决定时器关闭不掉的问题

      本文链接:https://www.haomeiwen.com/subject/bizvtjtx.html