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

vue keep-alive中的生命周期解讀

 更新時間:2023年10月21日 14:27:44   作者:nilmao  
這篇文章主要介紹了vue keep-alive中的生命周期,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

vue keep-alive生命周期

keep-alive是 Vue 提供的一個內(nèi)置組件,用來對組件進(jìn)行緩存——在組件切換過程中將狀態(tài)保留在內(nèi)存中,防止重復(fù)渲染DOM。

如果為一個組件包裹了 keep-alive,那么它會多出兩個生命周期:deactivated、activated。

同時,beforeDestroy 和 destroyed 就不會再被觸發(fā)了,因為組件不會被真正銷毀。

當(dāng)引入keep-alive的時候,頁面第一次進(jìn)入,鉤子的觸發(fā)順序created-> mounted-> activated,退出時觸發(fā)deactivated。

當(dāng)再次進(jìn)入(前進(jìn)或者后退)時,只觸發(fā)activated。

被keep-alive包裹的動態(tài)組件或router-view會緩存不活動的實例,再次被調(diào)用這些被緩存的實例會被再次復(fù)用,對于我們的某些不是需要實時更新的頁面來說大大減少了性能上的消耗,不需要再次發(fā)送HTTP請求,但是同樣也存在一個問題就是被keep-alive包裹的組件我們請求獲取的數(shù)據(jù)不會再重新渲染頁面,這也就出現(xiàn)了例如我們使用動態(tài)路由做匹配的話頁面只會保持第一次請求數(shù)據(jù)的渲染結(jié)果,所以需要我們在特定的情況下強制刷新某些組件

1.利用include、exclude屬性

<keep-alive include="orderList">
      <router-view></router-view>
</keep-alive>
<keep-alive exclude="index">
      <router-view></router-view>
</keep-alive>

include屬性表示只有name屬性為orderList的組件會被緩存,(注意是組件的名字,不是路由的名字)其它組件不會被緩存exclude屬性表示除了name屬性為index的組件不會被緩存,其它組件都會被緩存

2.利用meta屬性

export default[
 {
  path:'/',
  name:'home',
  components:Home,
  meta:{
    keepAlive:true //需要被緩存的組件
 },
 {
  path:'/orderList',
  name:'orderList',
  components:Book,
  meta:{
     keepAlive:false //不需要被緩存的組件
 } 
]
<keep-alive>
  <router-view v-if="this.$route.meat.keepAlive"></router-view>
  <!--這里是會被緩存的組件-->
</keep-alive>
<keep-alive v-if="!this.$router.meta.keepAlive"></keep-alive>
<!--這里是不會被緩存的組件-->

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue后臺項目如何使用router.addRoutes動態(tài)加入路由的思路

    vue后臺項目如何使用router.addRoutes動態(tài)加入路由的思路

    這篇文章主要介紹了vue后臺項目如何使用router.addRoutes動態(tài)加入路由的思路,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • vue3?setup語法糖各種語法新特性的使用方法(vue3+vite+pinia)

    vue3?setup語法糖各種語法新特性的使用方法(vue3+vite+pinia)

    這篇文章主要介紹了vue3?setup語法糖各種語法新特性的使用(vue3+vite+pinia),本文主要是記錄vue3的setup語法糖的各種新語法的使用方法,需要的朋友可以參考下
    2022-09-09
  • 解決vue 使用axios.all()方法發(fā)起多個請求控制臺報錯的問題

    解決vue 使用axios.all()方法發(fā)起多個請求控制臺報錯的問題

    這篇文章主要介紹了解決vue 使用axios.all()方法發(fā)起多個請求控制臺報錯的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • vue實現(xiàn)選項卡小案例

    vue實現(xiàn)選項卡小案例

    這篇文章主要為大家詳細(xì)介紹了vue實現(xiàn)選項卡小案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • vue源碼中的檢測方法的實現(xiàn)

    vue源碼中的檢測方法的實現(xiàn)

    這篇文章主要介紹了vue源碼中的檢測方法的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • vue實際運用之vuex持久化詳解

    vue實際運用之vuex持久化詳解

    這篇文章主要為大家介紹了vue運用之vuex持久化,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-12-12
  • Vue3中pinia的使用與持久化處理詳解

    Vue3中pinia的使用與持久化處理詳解

    Pinia?是一個基于?Vue?3?的狀態(tài)管理庫,可以更好地支持?TypeScript?和更靈活的狀態(tài)管理方式,本文主要介紹了pinia的使用與持久化處理,需要的可以參考一下
    2023-07-07
  • vue項目fetch本地PAG格式文件404 NotFound的解決

    vue項目fetch本地PAG格式文件404 NotFound的解決

    這篇文章主要介紹了vue項目fetch本地PAG格式文件404 NotFound的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • vue elementui form表單驗證的實現(xiàn)

    vue elementui form表單驗證的實現(xiàn)

    這篇文章主要介紹了vue elementui form表單驗證的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • Vue3使用dataV報錯問題的解決方法

    Vue3使用dataV報錯問題的解決方法

    這篇文章主要為大家詳細(xì)介紹了Vue3中使用dataV報錯問題的解決方法,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價值,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-11-11

最新評論

义乌市| 南靖县| 永德县| 高阳县| 望城县| 阿图什市| 武冈市| 策勒县| 中卫市| 翼城县| 肇州县| 鹤峰县| 平南县| 拉萨市| 黑山县| 行唐县| 台东县| 伊吾县| 名山县| 九寨沟县| 博湖县| 甘谷县| 福贡县| 庆云县| 新巴尔虎右旗| 中西区| 新宾| 阿瓦提县| 乌什县| 民县| 辽阳县| 定西市| 泰和县| 和林格尔县| 荣成市| 长海县| 开平市| 中阳县| 罗山县| 金昌市| 鹰潭市|