欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue中銷毀定時(shí)器的幾種解決方案

 更新時(shí)間:2023年08月18日 10:05:19   作者:ldcaws  
這篇文章主要給大家介紹了關(guān)于vue中銷毀定時(shí)器的幾種解決方案,銷毀定時(shí)器的操作一般是在beforeDestroy鉤子中進(jìn)行,根據(jù)定時(shí)器的數(shù)量不同可以有多種解決方法,需要的朋友可以參考下

引言

vue是單頁面應(yīng)用,路由切換后,定時(shí)器并不會(huì)自動(dòng)關(guān)閉,需要手動(dòng)清除,當(dāng)頁面被銷毀時(shí),清除定時(shí)器即可。

場(chǎng)景:在A.vue頁面有一個(gè)定時(shí)a,然后跳轉(zhuǎn)到B.vue頁面,此時(shí)A頁面的定時(shí)器a依然在運(yùn)行。

解決方式一:

  • 首先在data里進(jìn)行定義定時(shí)器;
data() {                   
  return {                                          
   timer: null  // 定時(shí)器名稱                 
  }         
},
  • 然后在mounted里使用定時(shí)器;
this.timer= setInterval(() => {
	  // 操作
      method();
    }, 60000);
  • 最后在beforeDestroy里清除定時(shí)器;
beforeDestroy() {
    if (this.timer) {
      clearInterval(this.timer);
    }
  },

解決方式二:

通過$once這個(gè)事件偵聽器在定義完定時(shí)器之后的位置來清除定時(shí)器。

    this.timer= setInterval(() => {
      // 操作
      method();
    }, 60000);
    // 通過$once來監(jiān)聽定時(shí)器,在beforeDestroy鉤子可以被清除
    this.$once('hook:beforeDestroy', () => {
      clearInterval(this.timer);
    })

解決方式三:

beforeRouteLeave(to, from, next){
    next();
    if (this.timer) {
      clearInterval(this.timer);
      this.timer = null;
    }
  },

附:vue離開頁面時(shí)清除定時(shí)器

let timer = setInterval(function(){
	console.log("我是定時(shí)器=====");
},2000);
this.$once("hook:beforeDestroy", () =>{
    clearInterval(timer);
});

總結(jié) 

到此這篇關(guān)于vue中銷毀定時(shí)器的幾種解決方案的文章就介紹到這了,更多相關(guān)vue銷毀定時(shí)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Vue3中的defineExpose函數(shù)用法深入解析

    Vue3中的defineExpose函數(shù)用法深入解析

    這篇文章主要介紹了Vue3中的defineExpose函數(shù)用法的相關(guān)資料,defineExpose是Vue3中用于在模式下暴露組件內(nèi)部屬性和方法的輔助函數(shù),它允許父組件通過ref訪問子組件的暴露內(nèi)容,提高組件間的交互能力并保持封裝性,需要的朋友可以參考下
    2025-01-01
  • vue elementui select標(biāo)簽監(jiān)聽change事件失效問題

    vue elementui select標(biāo)簽監(jiān)聽change事件失效問題

    這篇文章主要介紹了vue elementui select標(biāo)簽監(jiān)聽change事件失效問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • Vue3使用sessionStorage保存會(huì)話數(shù)據(jù)的實(shí)現(xiàn)方式

    Vue3使用sessionStorage保存會(huì)話數(shù)據(jù)的實(shí)現(xiàn)方式

    在前端開發(fā)中,我們常常需要在用戶會(huì)話期間保存一些數(shù)據(jù),這些數(shù)據(jù)在頁面刷新或?qū)Ш綍r(shí)依然需要存在,sessionStorage 是一種非常方便的方式來實(shí)現(xiàn)這一點(diǎn),在這篇文章中,我們將探討如何在Vue3應(yīng)用中使用sessionStorage來保存會(huì)話數(shù)據(jù),需要的朋友可以參考下
    2025-01-01
  • vue在自定義組件上使用v-model和.sync的方法實(shí)例

    vue在自定義組件上使用v-model和.sync的方法實(shí)例

    自定義組件的v-model和.sync修飾符其實(shí)本質(zhì)上都是vue的語法糖,用于實(shí)現(xiàn)父子組件的"數(shù)據(jù)"雙向綁定,下面這篇文章主要給大家介紹了關(guān)于vue在自定義組件上使用v-model和.sync的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • 一篇文章告訴你如何編寫Vue插件

    一篇文章告訴你如何編寫Vue插件

    這篇文章主要為大家介紹了如何編寫Vue插件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • Vue.js單向綁定和雙向綁定實(shí)例分析

    Vue.js單向綁定和雙向綁定實(shí)例分析

    這篇文章主要介紹了Vue.js單向綁定和雙向綁定,結(jié)合實(shí)例形式分析了vue.js單向綁定與雙向綁定相關(guān)原理、實(shí)現(xiàn)方法及操作技巧,需要的朋友可以參考下
    2018-08-08
  • 解決vue中菜單再次點(diǎn)擊內(nèi)容不刷新問題

    解決vue中菜單再次點(diǎn)擊內(nèi)容不刷新問題

    當(dāng)elementUI中菜單打開后,再次點(diǎn)擊不會(huì)刷新的問題,導(dǎo)致菜單再次點(diǎn)擊不刷新的根本原因是頁面打開后,再次打開相同的頁面是不會(huì)刷新的,這應(yīng)該是框架的機(jī)制就是如此,小編整理了兩個(gè)比較不錯(cuò)的解決方法,需要的朋友可以參考下
    2023-08-08
  • vue獲取當(dāng)前激活路由的方法

    vue獲取當(dāng)前激活路由的方法

    下面小編就為大家分享一篇vue獲取當(dāng)前激活路由的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • Vue混合文件使用以及ref的引用實(shí)例詳解

    Vue混合文件使用以及ref的引用實(shí)例詳解

    ref用來輔助開發(fā)者在不依賴于jQuery的情況下,獲取DOM元素或組件的引用,下面這篇文章主要給大家介紹了關(guān)于Vue混合文件使用以及ref的引用的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • Vue源碼學(xué)習(xí)之?dāng)?shù)據(jù)初始化

    Vue源碼學(xué)習(xí)之?dāng)?shù)據(jù)初始化

    這篇文章主要為大家介紹了Vue源碼學(xué)習(xí)之?dāng)?shù)據(jù)初始化實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-09-09

最新評(píng)論