久久福利_99r_国产日韩在线视频_直接看av的网站_中文欧美日韩_久久一

您的位置:首頁技術文章
文章詳情頁

vue使用keep-alive實現組件切換時保存原組件數據方法

瀏覽:17日期:2022-11-08 18:50:40

前言

最近在做一個精品課程后臺管理系統,其中涉及文件上傳和文件列表展示,我不想將他們寫入一個組件,故分開兩個組件實現。

問題:但由于上傳文件需要時間,這時要是用戶切換別的組件查看時,上傳文件組件就銷毀了,導致文件上傳失敗。

追求效果:想利用keep-alive實現上傳組件切換時仍繼續上傳文件,而其他組件則不會存活。

使用keep-alive的過程

普通方法:直接使用keep-alive

<keep-alive> <router-view /></keep-alive>

效果:雖然能使上傳文件組件存活,在切換組件時仍可繼續上傳

問題:其余各個組件都不會銷毀和重新掛起,導致所有組件的內容不會更新

更好一點的方法:配置路由加以判斷是否適用keep-alive

路由js:

//ManageFiles組件需要重新掛起刷新數據,而ManageUploadFile為上傳文件組件,故想之存活{ path:’files’, name:’ManageFiles’, component: () => import(’../pages/course/manage/resource/files/Files’),},{ path:’uploadfile’, name:’ManageUploadFile’, meta:{ keepAlive:true //是否存活標志 }, component: () => import(’../pages/course/manage/resource/files/UploadFile’),},

切換組件:

<template> <div class='manageResource'> <keep-alive> <router-view v-if='$route.meta.keepAlive' /> </keep-alive> <router-view v-if='!$route.meta.keepAlive' /> </div></template>

效果圖:

(1)一開始為File組件,mounted()打印’我是File’

vue使用keep-alive實現組件切換時保存原組件數據方法

(2)第一次切換為UploadFile組件,mounted()打印’我是UploadFile’

vue使用keep-alive實現組件切換時保存原組件數據方法

(3)再次切換回File組件,mounted()再次重新打印’我是File’

vue使用keep-alive實現組件切換時保存原組件數據方法

(4)最后再次切換回UploadFile組件,因為它一直存活,所以不會重新觸發mounted()再次重新打印’我是UploadFile’

vue使用keep-alive實現組件切換時保存原組件數據方法

補充知識:vue 動態組件(tabs切換)keep-alive:主要用于保留組件狀態或避免重新渲染

通過keep-alive 保留數據值 填寫數據時切換到其他頁面,后返回當前頁數據保留 ,主要用于保留組件狀態或避免重新渲染

<!--動態組件-component使用--> <div class='app'> <ul> <li @click='currView=’home’'>首頁</li> <li @click='currView=’abount’'>關于我們</li> </ul> <!--通過keep-alive 保留數據值 填寫數據時切換到其他頁面,后返回當前頁數據保留--> <keep-alive> <component :is='currView'></component> </keep-alive> </div>

<script type='text/x-Template' id='homeTemp'> <h2>首頁數據</h2></script><script type='text/x-Template' id='abountTemp'> <h2>關于我們數據<input type='text'/></h2></script>

<script type='text/javascript'> var vm=new Vue({ el:’.app’, data:{ currView:'home' }, components:{ 'home':{ template:'#homeTemp' }, 'abount':{ template:'#abountTemp' } } }); </script>

vue使用keep-alive實現組件切換時保存原組件數據方法

以上這篇vue使用keep-alive實現組件切換時保存原組件數據方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
主站蜘蛛池模板: 插插插干干干 | 亚洲午夜精品一区二区三区他趣 | 日本视频中文字幕 | 色狠狠一区 | 国产精品久久久久久久午夜片 | 婷婷av在线 | 男女视频在线看 | 91精品国产综合久久久久久漫画 | 国外爱爱视频 | 国偷自产av一区二区三区 | 欧美日韩国产精品一区 | 成人精品一区二区三区电影黑人 | 国产精品免费观看 | 久久手机在线视频 | 亚洲精品一区二区三区 | 国产欧美日本 | 男女啪啪高清无遮挡 | 特级黄一级播放 | 亚洲欧美综合 | 日韩免费视频 | 日本黄色a视频 | 一区二区中文 | 国产高清小视频 | www中文字幕在线观看 | 99精品一区二区 | 亚洲永久免费 | 亚洲综合在 | 亚洲欧洲日韩 | 精品久久久久久久久久久久 | 久久国产综合 | 黄色免费在线观看 | 亚洲欧美另类久久久精品2019 | 日韩欧美国产一区二区三区 | 欧美日一级片 | 毛片免费视频 | 奇米影视7777| 精品国产区 | 欧美精品二区中文乱码字幕高清 | 国产在线中文字幕 | 欧美自拍视频在线 | 精品国产黄a∨片高清在线 激情网站免费 |