鍍金池/ 問答/HTML/ vue組件created中創(chuàng)建的setInterval定時器,離開頁面之后仍然在

vue組件created中創(chuàng)建的setInterval定時器,離開頁面之后仍然在執(zhí)行,怎么讓它停止下來,等下次進來的時候再執(zhí)行?

如果離開頁面還在執(zhí)行,那么以后每次點擊進來豈不是都會重新執(zhí)行setInterval創(chuàng)建一個定時器?

回答
編輯回答
局外人

Vue 組件的生命周期有多個鉤子,可以插入不同的代碼,你這個需求可以考慮用 beforeDestroydestroyed 來處理。

2018年2月6日 16:39
編輯回答
怪痞

解決辦法如下:

data: {
    return {
        timer: null
    }
},
created() {
    this.timer = setInterval(....);
},
beforeDestroy() {
    if(this.timer) { //如果定時器還在運行 或者直接關(guān)閉,不用判斷
        clearInterval(this.timer); //關(guān)閉
    }
}
2017年2月21日 13:22