1.环境问题,this.interVal是我定义的定时器
如直接写clearInterval(this.interVal);不好用,需要换成window.clearInterval(this.interVal);
2.关闭指令执行的定时器源头问题,
如开启了多个定时器,再去清除定时器是无效的,因为无法定位到想清除的定时器上。
解决办法,将定时器归一
每次开启定时器时,判断一下定时器是否存在,这样万无一失。
开启:
if (!this.interVal) {
this.interVal = window.setInterval(() => {
//执行内容
}, 10 * 1000);
}
停止
if (this.interVal) {
window.clearInterval(this.interVal);
this.interVal = null;
}