日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

解決vue單頁面 回退頁面 keeplive 緩存問題

瀏覽:179日期:2022-12-30 17:07:15

場景:項目中遇到 vue 點(diǎn)擊回退 從A頁跳到B頁,緩存A頁,當(dāng)B頁狀態(tài)修改再次返回A時,A頁查詢條件緩存不刷新,列表刷新

A頁:

解決vue單頁面 回退頁面 keeplive 緩存問題

B頁:

解決vue單頁面 回退頁面 keeplive 緩存問題

解決方法:

利用keep-alive 緩存需要緩存的頁面

1.在app.vue中改寫router-view

<template> <div id='app'> <keep-alive> <router-view v-if='$route.meta.keepAlive'> <!-- 這里是會被緩存的視圖組件,比如 page1,page2 --> </router-view> </keep-alive> <router-view v-if='!$route.meta.keepAlive'> <!-- 這里是不被緩存的視圖組件,比如 page3 --> </router-view> </div></template>

2.在router/index.js中添加路由元信息,設(shè)置需要緩存的頁面

keepAlive:設(shè)置需要緩存的頁面

isBack:通過beforeRouteEnter這個鉤子函數(shù)中的from參數(shù)判斷是從哪個頁面過來的,這個參數(shù)執(zhí)行時,組件實例還沒創(chuàng)建,不能在data中定義變量。所以我們可以在路由中定義一個變量isBack,用來判斷。

{ path: ’/trade’, name: ’trade’, component: () => import( /* webpackChunkName: 'about' */ ’@/views/trade.vue’), meta: { title:’trade.tradeTitle’, keepAlive: true, // 此組件需要被緩存 isBack:false, //用于判斷上一個頁面是哪個 } }, { path: ’/detail/:id’, name: ’detail’, component: () => import( /* webpackChunkName: 'about' */ ’@/views/detail.vue’), meta: { title:’trade.detailTitle’, keepAlive: false, isBack:false,//用于判斷上一個頁面是哪個 } },

鉤子函數(shù)的執(zhí)行順序:

不使用keep-alive

beforeRouteEnter --> created --> mounted --> destroyed

使用keep-alive

beforeRouteEnter --> created --> mounted --> activated --> deactivated

再次進(jìn)入緩存的頁面,只會觸發(fā)beforeRouteEnter -->activated --> deactivated 。created和mounted不會再執(zhí)行。我們可以利用不同的鉤子函數(shù),做不同的事。務(wù)必理解上述鉤子函數(shù)的執(zhí)行時機(jī)和執(zhí)行順序,本教程的核心就依賴于此鉤子函數(shù)

activated和deactivated是使用keep-alive后,vue中比較重要的兩個鉤子函數(shù),建議詳細(xì)了解下。

在A頁面中通過beforeRouteEnter這個鉤子函數(shù)中判斷是從哪個頁面過來的

beforeRouteLeave(to, from, next) { // 路由導(dǎo)航鉤子,此時還不能獲取組件實例 `this`,所以無法在data中定義變量(利用vm除外) // 參考 https://router.vuejs.org/zh-cn/advanced/navigation-guards.html // 所以,利用路由元信息中的meta字段設(shè)置變量,方便在各個位置獲取。這就是為什么在meta中定義isBack // 參考 https://router.vuejs.org/zh-cn/advanced/meta.html if (from.path === ’/detail’){ //判斷是從哪個路由過來的, //如果是B頁面即detail頁面過來的,表明當(dāng)前頁面不需要刷新獲取新數(shù)據(jù),直接用之前緩存的數(shù)據(jù)即可 to.meta.isBack = true; }else{ to.meta.isBack = false; } next(); },

data中定義變量isFirstEnter用來判斷是否第一次進(jìn)入,或是否刷新了頁面,默認(rèn)false

data() { return { isFirstEnter:false, }; },

created中把isFirstEnter變?yōu)閠rue,說明是第一次進(jìn)入或刷新了頁面

created() { this.isFirstEnter=true; // 只有第一次進(jìn)入或者刷新頁面后才會執(zhí)行此鉤子函數(shù) // 使用keep-alive后(2+次)進(jìn)入不會再執(zhí)行此鉤子函數(shù) this.$nextTick(() => { this.getLists(); }); },

activated中增加判斷條件

activated() { if(this.$route.meta.isBack || !this.isFirstEnter){ // 如果isBack是false,表明需要獲取新數(shù)據(jù),否則就不再請求,直接使用緩存的數(shù)據(jù) // 如果isFirstEnter是true,表明是第一次進(jìn)入此頁面或用戶刷新了頁面,需獲取新數(shù)據(jù) this.tradeList=[] this.AjaxList = [] //把數(shù)據(jù)清空,可以稍微避免讓用戶看到之前緩存的數(shù)據(jù) this.pageNum = 1; this.$nextTick(() => { this.getLists(); }); }else{ this.$route.meta.isBack=false this.isFirstEnter=false; }},

以上這篇解決vue單頁面 回退頁面 keeplive 緩存問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Vue
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
av资源亚洲| 久久精品 人人爱| 国产精品久久亚洲不卡| 欧美啪啪一区| 国产精品一区亚洲| 久久爱www成人| 精品国产a一区二区三区v免费| 国产伦理久久久久久妇女| 国产欧美精品久久| 久久三级中文| 肉色欧美久久久久久久免费看| se01亚洲视频| 91九色精品| 九一精品国产| 黄色成人精品网站| 性欧美长视频| 日韩精品亚洲aⅴ在线影院| 日本欧美在线| 国产精品va| 香蕉视频亚洲一级| 国产精品日韩久久久| 亚洲日产国产精品| 国产精品永久| 成人羞羞视频在线看网址| 中文欧美日韩| 国产一区 二区| 天堂а√在线最新版中文在线| 久久国产亚洲精品| 男女男精品网站| 欧美午夜网站| 国产精品专区免费| 国产精品女主播一区二区三区| 欧美日韩91| 天堂√8在线中文| 久久不射网站| 久久不见久久见中文字幕免费| 亚洲爱爱视频| 亚洲精品裸体| 给我免费播放日韩视频| 亚洲精品a级片| 久久激五月天综合精品| 国产91一区| 日韩精品一区二区三区av| 黄毛片在线观看| 日韩专区欧美专区| 欧美片第1页综合| 久久久777| 欧美日本精品| 国产伊人精品| 91精品啪在线观看国产爱臀| 天堂а√在线最新版中文在线| 亚洲视频国产精品| 欧美韩日一区| 日韩欧美2区| 国产99亚洲| 美女视频黄久久| 午夜久久久久| 美女免费视频一区| 视频一区二区不卡| 成人亚洲精品| 丝袜脚交一区二区| 国产va在线视频| 亚洲一区二区三区中文字幕在线观看| 精品国产乱码久久久久久1区2匹| 视频一区二区三区入口| 国产欧美一区二区三区精品酒店| 日韩国产在线不卡视频| 久久久久国产| 国产精品观看| 综合激情五月婷婷| 天堂av在线| 国产日韩欧美高清免费| 红桃视频国产精品| 日韩欧美一区二区三区免费看| 国产丝袜一区| 99国产精品久久久久久久成人热| 色一区二区三区四区| 日本视频中文字幕一区二区三区| 一区二区三区四区精品视频| 视频福利一区| 九九久久国产| 日韩一区二区三区高清在线观看| 亚洲一级高清| 色偷偷偷在线视频播放| 国产精品扒开腿做爽爽爽软件| 亚洲深深色噜噜狠狠爱网站 | 精品久久影院| 最近国产精品视频| 欧美日韩国产一区二区三区不卡 | 久久xxxx| 国产综合婷婷| 日韩中文欧美| 久久99偷拍| 日韩精品福利一区二区三区| 欧美成人高清| 日韩精品永久网址| 久久69成人| 国产精品a级| 日韩激情一二三区| 亚洲精品无吗| 亚洲欧美日韩精品一区二区| 99精品国产一区二区三区| 国产伊人久久| 精品国产乱码久久久久久樱花| 美女久久久久久| 欧美激情综合| 欧美精品第一区| 久久在线视频免费观看| 亚洲成人精品| 成人免费电影网址| 亚洲爱爱视频| 日韩精品午夜| 91精品国产成人观看| 欧美日韩精品免费观看视完整 | 亚洲资源网站| 免费成人在线影院| 蜜臀va亚洲va欧美va天堂| 亚洲国产日韩欧美在线| 99热精品久久| 1000部精品久久久久久久久| 欧美日韩在线二区| 欧美高清不卡| 一区在线观看| 最新日韩欧美| 免费看欧美美女黄的网站| 蜜臀精品久久久久久蜜臀| 蜜臀久久99精品久久久久久9| 视频一区免费在线观看| 日韩影院免费视频| 美国欧美日韩国产在线播放| 在线国产日韩| 国产探花在线精品一区二区| 欧美国产另类| 国产一区二区三区久久| 免费看av不卡| 欧美日韩黑人| 国产精品外国| 日本亚洲视频| 国产欧美69| 超级白嫩亚洲国产第一| 久久九九精品| 免费国产亚洲视频| 国产欧美日韩免费观看| 老司机精品在线| 亚洲精品成人图区| 在线精品视频在线观看高清| 免费人成黄页网站在线一区二区| 日产欧产美韩系列久久99| 国产精品**亚洲精品| 91青青国产在线观看精品| 久久久天天操| 视频一区二区三区中文字幕| 国产日韩精品视频一区二区三区| 福利一区视频| 欧美日韩少妇| 日韩一区二区三区四区五区| 免费一级欧美片在线观看网站 | 天堂√中文最新版在线| 亚洲女同中文字幕| 日本成人中文字幕在线视频| 美女久久久久久| 久久精品国产大片免费观看| 男女激情视频一区| 国产精品日韩精品在线播放| 成人在线视频免费| 99日韩精品| 91欧美日韩在线| 成人在线超碰| 夜夜嗨一区二区三区| 欧美片第1页综合| 丝袜av一区| 亚洲精品影视| 国产一区二区三区四区二区| 在线亚洲自拍| 久久精品资源| 日韩视频二区| 国产精品日本一区二区不卡视频| 欧美日韩在线观看视频小说| 日韩精品亚洲aⅴ在线影院| 福利片在线一区二区| 久久av一区| 中文字幕在线视频网站| 亚洲一区二区日韩| 日本蜜桃在线观看视频| 深夜福利亚洲| 日韩伦理一区| 日韩激情网站| 欧美一级精品| 国产精品三级| 亚洲一区二区免费看| 欧美黄色精品| 在线精品观看| 欧美一区三区| 美女性感视频久久| 老色鬼久久亚洲一区二区| 国产第一亚洲| 日韩精品免费观看视频| 在线观看精品| 国产极品一区| 亚洲视频国产精品|