vue setInterval 定時(shí)器失效的解決方式
正常情況下,在data里定義homeSetInterval 保存定時(shí)器的ID值 ,在銷毀組件是使用clearInterval方法是可行的

但在使用了如下的keep緩存模式在使用銷毀模式不行了

應(yīng)該使用離開(kāi)路由器前方法beforeRouteLeave

補(bǔ)充知識(shí):vue中使用定時(shí)器的坑
我們?cè)谑褂胿ue的腳手架去搭建開(kāi)發(fā)環(huán)境的時(shí)候,在A頁(yè)面寫入一個(gè)定時(shí)器去定時(shí)請(qǐng)求一個(gè)接口,但是我們?nèi)頁(yè)面,C頁(yè)面的時(shí)候都會(huì)有這個(gè)接口定時(shí)請(qǐng)求的現(xiàn)象,那么怎樣處理呢?
第一步:
首先我在data函數(shù)里面進(jìn)行定義定時(shí)器名稱:
data() {
return {
timer: null // 定時(shí)器名稱
}
},
第二步:
在要用的方法中使用定時(shí)器
this.timer = (() => {
// 某些操作
}, 1000)
第三步:
beforeDestroy()生命周期內(nèi)清除定時(shí)器
beforeDestroy() {
clearInterval(this.timer);
this.timer = null;
}
以上這篇vue setInterval 定時(shí)器失效的解決方式就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解如何使用vue和electron開(kāi)發(fā)一個(gè)桌面應(yīng)用
這篇文章主要為大家介紹了詳解如何使用vue和electron開(kāi)發(fā)一個(gè)桌面應(yīng)用,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03
Vue中textarea自適應(yīng)高度方案的實(shí)現(xiàn)
本文主要介紹了Vue中textarea自適應(yīng)高度方案的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-01-01
vue elementui簡(jiǎn)易側(cè)拉欄的使用小結(jié)
這篇文章主要介紹了vue elementui簡(jiǎn)易側(cè)拉欄的使用,增加了側(cè)拉欄,目的是可以選擇多條數(shù)據(jù)展示數(shù)據(jù),本文通過(guò)示例代碼給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-06-06
vuex新手進(jìn)階篇之改變state?mutations的使用
在vue的項(xiàng)目中不可避免的會(huì)使用到vuex用于數(shù)據(jù)的存儲(chǔ),下面這篇文章主要給大家介紹了關(guān)于vuex新手進(jìn)階篇之改變state?mutations的使用,文中通過(guò)圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-10-10
使用webpack搭建vue項(xiàng)目及注意事項(xiàng)
這篇文章主要介紹了使用webpack搭建vue項(xiàng)目的方法,本文以開(kāi)發(fā)環(huán)境為例,通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06
用vue的雙向綁定簡(jiǎn)單實(shí)現(xiàn)一個(gè)todo-list的示例代碼
本篇文章主要介紹了用vue的雙向綁定簡(jiǎn)單實(shí)現(xiàn)一個(gè)todo的示例代碼,具有一定的參考價(jià)值,有興趣的可以了解一下2017-08-08

