国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

VUE設置和清除定時器

這篇具有很好參考價值的文章主要介紹了VUE設置和清除定時器。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

方法一、在生命周期函數(shù)beforeDestroy中清除?

data() {
    return {
      timer: null;
    };
},
created() {    
    // 設置定時器,5s執(zhí)行一次
    this.timer = setInterval(() => {
      console.log('setInterval');
    }, 5000);
}
beforeDestroy () {
    //清除定時器
    clearInterval(this.timer);
    this.timer = null;
}

方法二、使用hook:beforedestroy(推薦)

created() {    
    // 設置定時器,5s執(zhí)行一次
    let timer = setInterval(() => {
      console.log('setInterval');
    }, 5000);

    // 離開當前頁面時銷毀定時器
    this.$once('hook:beforeDestroy', () => {
      clearInterval(timer);
      timer = null;
    })
}

該方法與在生命周期鉤子beforeDestroy中清除定時器的操作原理一樣,但更有優(yōu)勢

1.無需在vue實例上定義定時器,減少不必要的內存浪費

2.設置和清除定時器的代碼放在一塊,可讀性維護性更好

三、beforeDestroy函數(shù)沒有觸發(fā)的情況

1、原因

<router-view>外層包裹了一層<keep-alive>

< keep-alive > 有緩存的作用,可以使被包裹的組件狀態(tài)維持不變,當路由被 keep-alive 緩存時不走 beforeDestroy 生命周期。被包含在 < keep-alive > 中創(chuàng)建的組件,會多出兩個生命周期鉤子: activated 與 deactivated。

activated
在組件被激活時調用,在組件第一次渲染時也會被調用,之后每次keep-alive激活時被調用。

deactivated
在組件失活時調用。

2、解決方案

借助 activated 和 deactivated 鉤子來設置和清除定時器

(1)生命周期鉤子

created() {
    // 頁面激活時設置定時器
    this.$on("hook:activated", () => {
        let timer = setInterval(()=>{
          console.log("setInterval");
        },1000)
    })

    // 頁面失活時清除定時器
    this.$on("hook:deactivated", ()=>{
      clearInterval(timer);
      timer = null;
    })
  }

(2)hook文章來源地址http://www.zghlxwxcb.cn/news/detail-408436.html

data() {
    return {
      timer: null // 定時器
    }
},
activated() {
    // 頁面激活時開啟定時器
    this.timer = setInterval(() => {
      console.log('setInterval');
    }, 5000)
},
deactivated() {
    // 頁面關閉(路由跳轉)時清除定時器
    clearInterval(this.timer)
    this.timer = null
},

到了這里,關于VUE設置和清除定時器的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • JavaScript中兩種定時器和清除定時器的使用

    ? 定時器就是在一段特定的時間后執(zhí)行某段程序代碼。 以指定的時間間隔(時間單位為毫秒)調用一次函數(shù)的定時器。 輪循定時器是以指定的時間間隔(時間單位為毫秒)重復調用一個函數(shù)的定時器。 clearTimeout(timeoutID) :清除只執(zhí)行一次的定時器(setTimeout函數(shù))。 timeoutID 為

    2024年02月13日
    瀏覽(22)
  • STM32 hal庫編程定時器清除中斷標志位,開啟定時器中斷會立即進入中斷的問題

    1、如果不清除中斷標志位,開啟定時器中斷的話,不能完成相應的計時,會立即進入中斷。 2、如果在開啟定時器中斷前清除了中斷標志位,就會等待計時完成再出發(fā)中斷。 3、主要是針對單次計時使用,尤其是對第一次計時有要求的程序。

    2024年02月01日
    瀏覽(22)
  • 單片機:定時器/計數(shù)器TMOD設置

    在嵌入式系統(tǒng)中,定時器和計數(shù)器是非常重要的功能模塊。通過使用定時器/計數(shù)器,我們可以實現(xiàn)各種時間相關的操作,比如定時中斷、計時測量等。在單片機中,定時器/計數(shù)器的配置是通過設置特定的寄存器來完成的。其中,TMOD寄存器用于設置定時器/計數(shù)器的工作模式。

    2024年02月02日
    瀏覽(21)
  • vue中銷毀定時器

    vue是單頁面應用,路由切換后,定時器并不會自動關閉,需要手動清除,當頁面被銷毀時,清除定時器即可。 場景:在A.vue頁面有一個定時a,然后跳轉到B.vue頁面,此時A頁面的定時器a依然在運行。 解決方式一: 首先在data里進行定義定時器; 然后在mounted里使用定時器; 最

    2024年02月12日
    瀏覽(22)
  • Vue中 使用定時器 (setInterval、setTimeout)

    js中定時器有兩種,一個是 循環(huán)執(zhí)行 setInterval ,另一個是 定時執(zhí)行 setTimeout 。 注意:定時器需要在頁面銷毀的時候清除掉,不然會一直存在! 1. 循環(huán)執(zhí)行( setInterval ) 顧名思義,循環(huán)執(zhí)行就是設置一個時間間隔,每過一段時間都會循環(huán)執(zhí)行這個方法,直到這個定時器被銷毀

    2024年02月12日
    瀏覽(15)
  • C++ 實現(xiàn)定時器的兩種方法(線程定時和時間輪算法修改版)

    定時器要求在固定的時間異步執(zhí)行一個操作,比如boost庫中的boost::asio::deadline_timer,以及MFC中的定時器。也可以利用c++11的thread, mutex, condition_variable 來實現(xiàn)一個定時器。 1、使用C++11中的thread, mutex, condition_variable來實現(xiàn)一個定時器。 注:此算法會每一個任務創(chuàng)建一個線程,不推

    2024年02月05日
    瀏覽(28)
  • uniapp 小程序實時且持續(xù)獲取定位信息(全局設置一次)(單頁面監(jiān)聽定位改變)(不采用定時器)

    本篇文章實現(xiàn)了uniapp 微信小程序實時獲取定位信息,小程序打開即可持續(xù)獲取定位信息, 位置更新也會觸發(fā)相關自定義事件 tips: 如果需要做成區(qū)分登錄狀態(tài)的 看這篇優(yōu)化后的文章: uniapp 持續(xù)獲取定位(登錄狀態(tài)下才獲取)(不采用定時器)(任意頁面都可監(jiān)聽定位改變)_前端小胡兔的

    2024年02月14日
    瀏覽(42)
  • Vue3 setup語法糖銷毀一個或多個定時器(setTimeout或setInterval)

    如果在頁面/組件增加了定時器,就算跳轉到其他頁面,定時器也不會被清理,這時候就需要手動清理,不然會有意想不到的bug,也會影響性能。 setTimeout是只執(zhí)行一次,setInterval是循環(huán)執(zhí)行,以下是用setTimeout舉例子,如果想要用setInterval,替換一次方法就行。 setTimeout替換成

    2024年02月13日
    瀏覽(47)
  • 【51單片機】如何設置中斷函數(shù)(場景:在定時器工作完跳轉到中斷程序時,怎么識別我們的中斷程序在哪里呢?)

    【51單片機】如何設置中斷函數(shù)(場景:在定時器工作完跳轉到中斷程序時,怎么識別我們的中斷程序在哪里呢?)

    前言 大家好吖,歡迎來到 YY 滴單片機系列 ,熱烈歡迎! 本章主要內容面向接觸過單片機的老鐵 本章是【利用定時器和中斷實現(xiàn)一個簡單項目】中的一部分,感興趣的老鐵可以跳轉傳送門查看 傳送門 歡迎訂閱 YY 滴C++專欄!更多干貨持續(xù)更新!以下是傳送門! YY的《C++》專

    2024年02月19日
    瀏覽(27)
  • vue-element-table表格實現(xiàn)每一條數(shù)據(jù)綁定定時器實現(xiàn)倒計時或者持續(xù)時間

    前言 最近在開發(fā)中遇到一個需求,每一條數(shù)據(jù)前端計算處理時間,或者是倒計時時間。 第一表格不可能展示所有數(shù)據(jù),所以我們需要當前時間和數(shù)據(jù)庫開始時間獲取一個初始值。 第二我們需要把定時器持續(xù)時間綁給每一條數(shù)據(jù)中,方便展示,和操作時候傳遞給后端存儲。

    2024年01月20日
    瀏覽(40)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包