vue自带组件keep-alive多层嵌套问题
当我从A页面跳到B页面时需要返回A页面不刷新,可以设置A路由的meta={keepAlive:true},B路由的meta={keepAlive:false}实现。
但是当我需要从A跳到B然后再跳到C,之后C返回B没有问题,但是B返回A的时候A页面刷新了,这个应该怎么解决?
回答:
可以借助<keep-alive>
的include
和exclude
属性结合路由监听来实现
<keep-alive :include="includeList" :exclude="excludeList"> <router-view></router-view>
</keep-alive>
监听$route
对象,当$route.meta.keepAlive
为true
时,将对应的$route.name
加入至includeList
内,注意路由页面的name
应与路由的name
相同,<keep-alive>
本质监听的是组件,因此路由页面对应的.vue文件应该有name
以上是 vue自带组件keep-alive多层嵌套问题 的全部内容, 来源链接: utcz.com/p/937340.html