美文网首页
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