gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長資訊網
最全最豐富的資訊網站

vue3項目keepAlive使用方法詳解

本篇文章給大家帶來vue項目keepalive使用方法詳解,keepalive是Vue的內置組件,作用是將組件緩存在內存當中,防止重復渲染DOM,屬于消耗內存獲取速度。希望對大家有幫助。

vue3項目keepAlive使用方法詳解

常用的用法是將組件或者路由緩存,現有的用法vue2.x與vue3.x有部分差別。以下主要將keepaliev在vue3.0中的用法。

通常我們可以配置整個頁面緩存或只讓特定的某個組件保持緩存信息,配置了keepalive的路由或者組件,只會在頁面初始化的時候執行created->mounted生命周期,第二次及以后再進入該頁面將不會執行改生命周期,而是會去讀取緩存信息。

1、router配置緩存

1)第一步:配置App.vue
vue2.x與vue3.0的App.vue配置有差異,在App.vue配置信息如下:
vue2.x中,router-view可整個放入keepalive中,如下:

<template> 	<!-- vue2.x配置 -->    <keep-alive>     <router-view v-if="$route.meta.keepAlive" />   </keep-alive>   <router-view v-if="!$route.meta.keepAlive"/></template>

vue3.0的App.vue配置方法如下:

<template>   <!-- vue3.0配置 -->   <router-view v-slot="{ Component }">     <keep-alive>       <component :is="Component"  v-if="$route.meta.keepAlive"/>     </keep-alive>     <component :is="Component"  v-if="!$route.meta.keepAlive"/>   </router-view> </template>

這里component是vue中的特殊組件,:is是用來綁定指定組件,這里是與路由對應的頁面綁定。

2)第二步:添加meta屬性
在對應的路由上添加meta屬性來設置頁面是否要使用緩存,如下:

{   path: "/keepAliveTest",    name: "keepAliveTest",    meta: {        keepAlive: true //設置頁面是否需要使用緩存    },    component: () => import("@/views/keepAliveTest/index.vue")  },

到此即可實現頁面的簡單緩存,但是有些場景需要做復雜處理,比如說頁面部分信息不需要讀緩存,每次進入都需要進行處理,這個時候我們就可以使用activated生命周期來解決頁面部分刷新問題。

3)實現頁面部分刷新
先了解vue的生命周期,被keepAlive包裹的組件和頁面,頁面進入時執行的生命周期為:created->mounted->activated;
其中created->mounted是頁面第一次進入才會執行,activated生命周期在頁面每次進入都會執行,特屬于keepAlive的一個生命周期,所以我們把頁面每次進來要進行的操作放入該生命周期即可。
如下代碼:

activated() { 	// 頁面每次進入將手機動態驗證碼置為空    this.$refs.mobPwdCode.inputValue = '';},

實現的功能是用戶每次進入將動態驗證碼設為空,實現此功能也可以用其他方式,比如說將該組件放緩存外(參見2、component配置緩存)。

4)動態設置路由keepAlive屬性
有些時候我們用完了keepalive緩存之后,想讓頁面不再保持緩存,或者設置下一個頁面keepalive,也這個時候我們可以改變meta的keepAlive值來去除頁面緩存,使用beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave,使用方式如下:

// to為即將跳轉的路由,from為上一個頁面路由beforeRouteLeave(to, from,+ next) {     // 設置下一個路由的 meta     to.meta.keepAlive = false;     next();}

2、組件配置緩存

1)使用場景

通常我們會對vue的一個頁面進行緩存,然而有些時候我們僅需要緩存頁面的某一個組件,或是在使用動態組件compnent進行組件切換時需要對組件進行緩存。

2)緩存頁面指定組件

當用于App.vue時,所有的路由對應的頁面為項目所對應的組件,使用方法如下:
在keep-alive組件上使用include或exclude屬性,如下:使用include
代表將緩存name為testKA的組件,

// APP.vue文件,將頁面作為組件緩存<router-view v-slot="{ Component }">   <keep-alive include="testKA">     <component :is="Component"/>   </keep-alive></router-view>

在router對應的頁面中,需要設置name屬性,如下:

export default {     name:'testKA',// keep-alive中include屬性匹配組件name     data() {return {}},     activated() {         // keepalive緩存的頁面每次進入都會進行的生命周期     },}

此外,include用法還有如下:

<!-- 逗號分隔字符串 --><keep-alive include="a,b">   <component :is="view"></component></keep-alive><!-- 正則表達式 (使用 `v-bind`) --><keep-alive :include="/a|b/">   <component :is="view"></component></keep-alive><!-- 數組 (使用 `v-bind`) --><keep-alive :include="['a', 'b']">   <component :is="view"></component></keep-alive>

exclude用法與include用法相同,代表不被緩存的組件。此外,keep-alive還有一個max屬性,代表緩存組件最大數量,一旦這個數字達到了,在新實例被創建之前,已緩存組件中最久沒有被訪問的實例會被銷毀掉。

<keep-alive :max="10">   <component :is="view"></component></keep-alive>

當用于某個頁面進行組件切換時,用法與緩存路由相同,不過只是將頁面降級為一個組件,父組件由App.vue降級為對應路由頁面。

3)總結

在實戰過程中,發現keepalive緩存組件時,不能跨級使用;,比如在App.vue中使用include屬性進行name="a"匹配時,只能匹配緩存name為a的子組件(路由頁面),而不能緩存name為"a"的孫子組件(子頁面引的組件)。

若想緩存孫子組件,可以將整個子組件緩存,或者在子組件里再使用keepalive。關于keepalive使用說明文檔,可去官網學習:https://v3.vuejs.org/guide/component-dynamic-async.html#dynamic-components-with-keep-alive

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
好吊妞无缓冲视频观看| 婷婷免费在线观看| 黄色网址在线免费看| 欧美成人黑人猛交| 久久黄色片视频| 青青草国产免费| 日本丰满大乳奶| 裸体大乳女做爰69| 欧美 另类 交| 色乱码一区二区三区熟女| 一二三级黄色片| 久久久久xxxx| 四虎成人在线播放| 免费成人黄色大片| av噜噜在线观看| 中文字幕线观看| 性欧美在线视频| 天美一区二区三区| www.亚洲自拍| www.亚洲一区二区| 日日噜噜噜夜夜爽爽| 一级全黄肉体裸体全过程| 国产福利片一区二区| 欧美性受xxxx黑人猛交88| 黄黄视频在线观看| 草草草视频在线观看| 97视频在线免费| 国产一区二区网| 已婚少妇美妙人妻系列| 美女黄色片视频| 五月六月丁香婷婷| 黄色一级大片免费| 波多野结衣乳巨码无在线| 97干在线视频| 男的插女的下面视频| av天堂永久资源网| 另类小说第一页| 一级淫片在线观看| 日韩久久久久久久久久久久| 超碰成人免费在线| 男女av免费观看| 九九九九九国产| 777久久精品一区二区三区无码| 激情六月天婷婷| 免费在线激情视频| 亚洲免费成人在线视频| 国产在线视频在线| 成人免费性视频| 成年人免费大片| 国内自拍第二页| 一本久道高清无码视频| 免费看污污网站| 欧美在线观看视频免费| 日韩人妻无码精品久久久不卡| 国产av第一区| 91传媒免费视频| 日韩中文字幕二区| 国产伦精品一区二区三区四区视频_| 日本少妇高潮喷水视频| 亚洲免费看av| 日本免费成人网| 在线观看免费不卡av| 国产爆乳无码一区二区麻豆| 538任你躁在线精品免费| 少妇久久久久久被弄到高潮| caoporn超碰97| 波多野结衣与黑人| 国产91色在线观看| 青青在线免费观看| 亚洲自拍第三页| 青青青国产在线视频| 国产a级黄色大片| 成人综合久久网| 国产精品自拍片| 国产大尺度在线观看| 免费一级特黄录像| 国产日产欧美视频| a天堂资源在线观看| 天天色天天干天天色| 国产一线二线三线在线观看| 国产黄色片免费在线观看| 99日在线视频| 国内外成人免费在线视频| 国产a级一级片| 波多野结衣综合网| www成人免费| 黄色一级片av| 久久久一二三四| 99999精品| 亚洲精品国产久| 手机av在线免费| 中文字幕第38页| 国产又黄又猛又粗又爽的视频| 久久免费视频3| 成年人网站免费视频| wwwwww欧美| 青青草国产免费| 国产天堂视频在线观看| 亚洲爆乳无码精品aaa片蜜桃| 老司机午夜网站| 好吊色这里只有精品| 国产又黄又爽免费视频| 中文字幕在线视频一区二区| 在线观看免费不卡av| 制服丝袜中文字幕第一页 | 爆乳熟妇一区二区三区霸乳| 久久久久久久久久久久久国产精品| 欧美日本视频在线观看| ww国产内射精品后入国产| 超碰网在线观看| 国产精品视频黄色| 少妇黄色一级片| 6080国产精品| 日本中文字幕一级片| 欧美乱大交xxxxx潮喷l头像| 免费毛片小视频| 99热一区二区| 蜜臀av性久久久久蜜臀av| 大西瓜av在线| 午夜dv内射一区二区| 午夜一级免费视频| 成人午夜视频免费观看| 日韩a在线播放| 一区二区三区四区毛片| 成人国产一区二区三区| 18禁男女爽爽爽午夜网站免费 | 国内精品国产三级国产aⅴ久| av影院在线播放| 欧美视频第三页| 一级日本黄色片| 国产乱子伦农村叉叉叉| 日本久久精品一区二区| 日本三级中文字幕在线观看| 青青在线视频观看| avove在线观看| 成年人视频在线免费| 91免费网站视频| 久久久久人妻精品一区三寸| 欧美日韩理论片| 北条麻妃视频在线| 400部精品国偷自产在线观看| 日韩av资源在线| 男女裸体影院高潮| 亚洲激情在线观看视频| 成人区一区二区| 91 在线视频观看| 久在线观看视频| 最近中文字幕免费mv| 日本999视频| 欧美男女爱爱视频| 特级毛片在线免费观看| 天天爽天天爽夜夜爽| 黄色片网址在线观看| 天天成人综合网| 九九热免费精品视频| 中文字幕无码精品亚洲资源网久久| 天堂中文av在线| 亚洲爆乳无码专区| 无码 制服 丝袜 国产 另类| 久久精品久久99| 最新中文字幕2018| 精品欧美一区免费观看α√| 国产内射老熟女aaaa| 99视频在线观看视频| 国产熟人av一二三区| 欧美亚洲精品一区二区| 亚洲啊啊啊啊啊| 丰满女人性猛交| 午夜激情影院在线观看| 在线观看高清免费视频| 免费av网址在线| 青娱乐自拍偷拍| 丁香花在线影院观看在线播放| 免费在线精品视频| 亚洲美女自拍偷拍| 国产奶头好大揉着好爽视频| 午夜剧场高清版免费观看| 成人性生交免费看| 亚洲一级片网站| 狠狠干狠狠操视频| 欧洲美女亚洲激情| 久久人人爽人人片| 日本福利视频导航| 日本三日本三级少妇三级66| 香蕉视频免费版| 久久亚洲国产成人精品无码区| 欧美 亚洲 视频| 日韩精品在线中文字幕| 久久99中文字幕| 免费黄色日本网站| 91av俱乐部| 日本中文字幕观看| 韩国黄色一级大片| 精品人妻人人做人人爽| 日韩国产一级片| 男女视频一区二区三区| 欧美激情第3页| 国产内射老熟女aaaa| 久草热视频在线观看| 九九九在线观看视频|