介绍
今天就跟大家聊聊有关vue维生实现多组件嵌套中个别组件存活不销毁的方法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
<强>配置路由加以判断是否使用点火电极强>
MVideoUpload, MFileUpload为上传文件组件,故想之存活,而其他组件则需要挂起刷新数据,但由于MVideoUpload, MFileUpload分别嵌套在MVideos, MFiles组件中,为了保证跳转其他模块组件的时候,上传视频和上传文件的模块不销毁(因为一旦父组件销毁,子组件自然也销毁了),所以两个父组件也需要存活,只是之后需要再加以判断存活那几个子组件。
路由js:
{ 路径:& # 39;资源# 39; 名称:& # 39;MResource& # 39; 元:{ 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. ./页面/管理/资源/资源# 39;), 孩子:( { 路径:& # 39;视频# 39; 名称:& # 39;MVideos& # 39; 元:{ keepAlive:真的,//包含存活组件 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. ./页面/管理/资源/视频/视频# 39;), 孩子:( { 路径:& # 39;列表# 39; 名称:& # 39;MVideoList& # 39; 元:{ 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. ./页面/管理/资源/视频/VideosList& # 39;), }, { 路径:& # 39;上传# 39; 名称:& # 39;MVideoUpload& # 39; 元:{ keepAlive:真的,//需要存活 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. ./页面/管理/资源/视频/UploadVideo& # 39;), }, { 路径:& # 39;更新# 39; 名称:& # 39;MVideoUpdate& # 39; 元:{ 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. ./页面/管理/资源/视频/UpdateVideo& # 39;), }, { 路径:& # 39;细节# 39; 名称:& # 39;MVideoDetail& # 39; 元:{ 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. ./页面/管理/资源/视频/VideoDetail& # 39;), }, ), 重定向:{名称:& # 39;MVideoList& # 39;} }, { 路径:& # 39;文件# 39; 名称:& # 39;MFiles& # 39; 元:{ keepAlive:真的,//包含存活组件 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. ./页面/管理/资源/文件/文件# 39;), 孩子:( { 路径:& # 39;列表# 39; 名称:& # 39;MFileList& # 39; 元:{ 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. ./页面/管理/资源/文件/FilesList& # 39;), }, { 路径:& # 39;上传# 39; 名称:& # 39;MFileUpload& # 39; 元:{ keepAlive:真的,//需要存活 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. .//管理/资源/文件/页面还是# 39;), }, { 路径:& # 39;更新# 39; 名称:& # 39;MFileUpdate& # 39; 元:{ 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. ./页面/管理/资源/文件/UpdateFile& # 39;), }, { 路径:& # 39;细节# 39; 名称:& # 39;MFileDetail& # 39; 元:{ 身份验证:真//是否需要登录 }, 组件:()=比;进口(& # 39;. ./页面/管理/资源/文件/FileDetail& # 39;), }, ), 重定向:{名称:& # 39;MFileList& # 39;} }, ), 重定向:{名称:& # 39;MFiles& # 39;} },
<强>各父组件都是如此:强>
一层层判断哪些组件需要存活不销毁,从而实现对任意一个组件切换组件时使其存活不销毁。
& lt;过渡name=癱omponent-fade"模式=皁ut-in"比; & lt; keep-alive> & lt; router-view v=皉oute.meta.keepAlive"美元;/比; & lt;/keep-alive> & lt;/transition> & lt;过渡的名字=癱omponent-fade"模式=皁ut-in"比; & lt; router-view v=? route.meta.keepAlive"美元;/比; & lt;/transition>
<强> vue页签模式+维生解决关闭页签后缓存组件未销毁问题强>
<强> 1。简介强>
vue使用页签模式,组件使用点火电极缓存,发现页签关闭后缓存组件未销毁,只是出于非活动状态
<强> 2。解决强>
使用点火电极的包括属性,这个属性包含了缓存组件的名称,可以将其赋值为动态属性
页签商店
出口默认{ 状态:{ 当前:layui.data(& # 39;标签# 39;)。当前| |{},//当前页签 列表:layui.data(& # 39;标签# 39;)。列表| |[]//页签列表 }, getter: {/* *标签名称列表*/tagname(状态){ 返回state.list.map(函数(标签){返回tag.name}) } } }vue维生实现多组件嵌套中个别组件存活不销毁的方法