Vue中keep-alive在路由钩子设置缓存或者不缓存如有 3 个路由 A、B、C, B 跳到 A,A 不刷新 C 跳到 A,A 刷新我在网上找的代码第一次的时候没有效果,但是之后就正常了,不知道什么原因导致的routerApp.vue <keep-alive> <router-view v-if="$route.meta.keepAlive"> <!-- 这里是会被缓存的视图组件,比如 Home! --> </router-view> </keep-alive> <router-view v-if="!$route.meta.keepAlive"> <!-- 这里是不被缓存的视图组件,比如 Edit! --> </router-view> 在C中 C 到 A A刷新 beforeRouteLeave(to, from, next) { // 设置下一个路由的 meta to.meta.keepAlive = false; // 让 A 不缓存,即刷新 next(); },B到A A不刷新 beforeRouteLeave(to, from, next) { to.meta.keepAlive = true; // 让 A 缓存,即不刷新 next(); }为什么第一次没有效果 之后就正常了呢? 请求怎么解决呢?
添加回答
举报
0/150
提交
取消