最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue組件和Route的生命周期實例詳解

 更新時間:2018年02月10日 09:18:23   作者:huangpb123  
這篇文章主要介紹了Vue組件和Route的生命周期的相關(guān)知識,需要的朋友可以參考下

先講點實際的

實用點的鉤子:

Created:vue實例被生成后的一個生命周期鉤子函數(shù)。(頁面初始化數(shù)據(jù)加載一般寫這里);
beforeCreate:給個loading界面 created撤銷loading;
beforeDestory:你確認(rèn)刪除XX嗎?
destoryed:當(dāng)前組件已被刪除,清空相關(guān)內(nèi)容

關(guān)于Vue組件生命周期,翻譯后圖示:

module.exports = { 
    //props: ['父組建傳的值'], 
    data:function(){ 
      lifecycle.push("data"); 
      return { 
        msg: '各個階段,可以查看控制臺輸出,message from my-views', 
        title:'my_views', 
        lifecycle: lifecycle 
      } 
    }, 
    //這里是route的生存周期 
    route:{ 
      //waitForData: true, // 數(shù)據(jù)加載完畢后再切換試圖,也就是 點擊之后先沒反應(yīng),然后數(shù)據(jù)加載完,再出發(fā)過渡效果 
      canActivate:function(transition){ 
        // canActivate階段,可以做一些用戶驗證的事情(是否可以被激活) 
        // 在驗證階段,當(dāng)一個組件將要被切入的時候被調(diào)用。 
      }, 
      activate:function(transition){ 
                // 在激活階段被調(diào)用,在 activate 被斷定( resolved ,指該函數(shù)返回的 promise 被 resolve )。用于加載和設(shè)置當(dāng)前組件的數(shù)據(jù)。(激活) 
        //this.$root.$set('header',this.title); 
        transition.next(); 
        //此方法結(jié)束后,api會調(diào)用afterActivate 方法 
        //在aftefActivate中 會給組件添加 $loadingRouteData 屬性 并設(shè)置為true 
      }, 
      data: function(transition) { 
        var _this = this; 
        // 在激活階段被調(diào)用,在 activate 被斷定( resolved ,指該函數(shù)返回的 promise 被 resolve )。用于加載和設(shè)置當(dāng)前組件的數(shù)據(jù) 
        // 說明之前請求過 則不用再請求了 
        if(this.$root.myViewsData){ 
          this.$data = this.$root.myViewsData; 
          transition.next(); 
          console.log('已經(jīng)請求過了不再請求數(shù)據(jù)'); 
          return; 
        } 
        //將數(shù)據(jù)同步到根節(jié)點 
        this.$root.myViewsData = this.$data; 
        setTimeout(function(){ 
          //這里 _this.$loadingRouteData 是 true 
          transition.next({msg:'加載后的數(shù)據(jù)'}); 
          //在調(diào)用完transition.next 后,_this.$loadingRouteData 為 false 
        }.bind(this),4000); 
      }, 
      canDeactivate:function(transition){ 
        // 在驗證階段,當(dāng)一個組件將要被切出的時候被調(diào)用。(是否可以被禁用) 
      }, 
      deactivate: function (transition) { 
        // 在激活階段,當(dāng)一個組件將要被禁用和移除之時被調(diào)用。(禁用) 
      } 
    }, 
    beforeCreate:function(){ 
      // 在實例初始化之后,數(shù)據(jù)觀測(data observer) 和 event/watcher 事件配置之前被調(diào)用。 
    }, 
    created:function(){ 
      // 實例已經(jīng)創(chuàng)建完成之后被調(diào)用。在這一步,實例已完成以下的配置:數(shù)據(jù)觀測(data observer),屬性和方法的運算, watch/event 事件回調(diào)。然而,掛載階段還沒開始,$el 屬性目前不可見。 
    }, 
    beforeCreate:function(){ 
      // 在實例初始化之后,數(shù)據(jù)觀測(data observer) 和 event/watcher 事件配置之前被調(diào)用。 
    }, 
    mounted:function(){ 
      // el 被新創(chuàng)建的 vm.$el 替換,并掛載到實例上去之后調(diào)用該鉤子。如果 root 實例掛載了一個文檔內(nèi)元素,當(dāng) mounted 被調(diào)用時 vm.$el 也在文檔內(nèi)。 
    }, 
    beforeUpdate: function(){ 
      // 數(shù)據(jù)更新時調(diào)用,發(fā)生在虛擬 DOM 重新渲染和打補丁之前。  
      // 你可以在這個鉤子中進(jìn)一步地更改狀態(tài),這不會觸發(fā)附加的重渲染過程。 
    }, 
    updated: function(){ 
      // 由于數(shù)據(jù)更改導(dǎo)致的虛擬 DOM 重新渲染和打補丁,在這之后會調(diào)用該鉤子。 
      //當(dāng)這個鉤子被調(diào)用時,組件 DOM 已經(jīng)更新,所以你現(xiàn)在可以執(zhí)行依賴于 DOM 的操作。然而在大多數(shù)情況下,你應(yīng)該避免在此期間更改狀態(tài),因為這可能會導(dǎo)致更新無限循環(huán)。 
    }, 
    // <keep-alive> 包裹動態(tài)組件時,會緩存不活動的組件實例,而不是銷毀它們。 
    activated: function(){ 
      // keep-alive 組件激活時調(diào)用。 
    }, 
    deactivated: function(){ 
      // keep-alive 組件停用時調(diào)用。 
    }, 
    beforeDestroy:function(){ 
      // 實例銷毀之前調(diào)用。在這一步,實例仍然完全可用。 
    }, 
    destroyed:function(){ 
      // Vue 實例銷毀后調(diào)用。調(diào)用后,Vue 實例指示的所有東西都會解綁定,所有的事件監(jiān)聽器會被移除,所有的子實例也會被銷毀。 
    } 
  } 

總結(jié)

以上所述是小編給大家介紹的Vue組件和Route的生命周期詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • Vue中的reactive函數(shù)操作代碼

    Vue中的reactive函數(shù)操作代碼

    這篇文章主要介紹了Vue中的reactive函數(shù),本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • vuex結(jié)合session存儲數(shù)據(jù)解決頁面刷新數(shù)據(jù)丟失問題

    vuex結(jié)合session存儲數(shù)據(jù)解決頁面刷新數(shù)據(jù)丟失問題

    在項目中表單篩選項里,選擇完之后刷新頁面數(shù)據(jù)就變了,沒有保留在自己選擇的選項上。本文使用session存儲數(shù)據(jù),具有一定的參考價值,感興趣的可以了解一下
    2021-09-09
  • VUE實現(xiàn)一個Flappy Bird游戲的示例代碼

    VUE實現(xiàn)一個Flappy Bird游戲的示例代碼

    這篇文章主要介紹了VUE實現(xiàn)一個Flappy Bird的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • vue3+vite加載本地js/json文件不能使用require淺析

    vue3+vite加載本地js/json文件不能使用require淺析

    這篇文章主要給大家介紹了關(guān)于vue3+vite加載本地js/json文件不能使用require的相關(guān)資料,require 是屬于 Webpack 的方法,在v3+vite的項目里面并不適用,需要的朋友可以參考下
    2023-07-07
  • vue雙向綁定數(shù)據(jù)限制長度的方法

    vue雙向綁定數(shù)據(jù)限制長度的方法

    這篇文章主要為大家詳細(xì)介紹了vue雙向綁定數(shù)據(jù)限制長度的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • vue?禁止重復(fù)點擊發(fā)送多次請求的實現(xiàn)

    vue?禁止重復(fù)點擊發(fā)送多次請求的實現(xiàn)

    本文主要介紹了vue?禁止重復(fù)點擊發(fā)送多次請求的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03
  • 關(guān)于vue中對window.openner的使用指南

    關(guān)于vue中對window.openner的使用指南

    opener屬性是一個可讀可寫的屬性,可返回對創(chuàng)建該窗口的Window對象的引用,下面這篇文章主要給大家介紹了關(guān)于vue中對window.openner使用的相關(guān)資料,需要的朋友可以參考下
    2022-11-11
  • vue常用高階函數(shù)及綜合實例

    vue常用高階函數(shù)及綜合實例

    這篇文章主要介紹了vue常用高階函數(shù)及綜合案例,文章內(nèi)容講解的很清晰,有對于這方面感興趣的同學(xué)可以研究下
    2021-02-02
  • Vue中使用this.$set()如何新增數(shù)據(jù),更新視圖

    Vue中使用this.$set()如何新增數(shù)據(jù),更新視圖

    這篇文章主要介紹了Vue中使用this.$set()實現(xiàn)新增數(shù)據(jù),更新視圖方式。具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • vue的ssr服務(wù)端渲染示例詳解

    vue的ssr服務(wù)端渲染示例詳解

    這篇文章主要給大家介紹了關(guān)于vue的ssr服務(wù)端渲染的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04

最新評論

龙游县| 香港 | 鄂尔多斯市| 沙坪坝区| 固始县| 佛坪县| 株洲县| 望谟县| 张掖市| 紫云| 东乌珠穆沁旗| 罗源县| 确山县| 星子县| 泉州市| 盘山县| 寿阳县| 中山市| 东乡县| 抚远县| 鄂伦春自治旗| 林口县| 盖州市| 潼关县| 莲花县| 六盘水市| 禹城市| 特克斯县| 灌阳县| 江口县| 西盟| 永济市| 奉贤区| 九台市| 达拉特旗| 遂溪县| 桃园市| 淮阳县| 三台县| 华蓥市| 界首市|