vue中路由的动态keepAlive

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue中路由的动态keepAlive相关的知识,希望对你有一定的参考价值。

参考技术A 如果想让vue的所有页面都保持keepAlive的状态。只需要在app.vue的router-view外面套一层keep-alive

如果只想让某些路由保持keepAlive,只需要向keep-alive传入include(不想让某些路由keepAlive,其他的都keepAlive。则需传入exclude)

而include的数组完全可以通过函数获取。所以只需要在router.js中,在定义每个路由时说明其是keepAlive,并且在app.js中能够获取到该状态即可。这里给出的做法是定义路由时,通过meta给出状态,并将该状态的路由存入sessionStorage,在app.js中再通过sessionStorage取出来。

此时,在进入某个路由前,路由的地址已经存入了sessionStorage
app.vue中需要watch $router ,并从sessionStorage中取出,放到data里。
keepAlive的:include再返回data中刚放入的地址数组

以上是关于vue中路由的动态keepAlive的主要内容,如果未能解决你的问题,请参考以下文章

vue-动态路由的实现

vue项目实现动态路由和动态菜单搭建插件式开发框架免费源码

Vue动态路由

Vue 动态路由

vue项目 动态路由怎么做

Vue实战篇|使用路由管理用户权限(动态路由)