为了账号安全,请及时绑定邮箱和手机立即绑定

keep-alive在路由钩子设置缓存或者不缓存如有 3 个路由 A、B、C, B 跳到 A

keep-alive在路由钩子设置缓存或者不缓存如有 3 个路由 A、B、C, B 跳到 A

繁星点点滴滴 2019-03-21 18:19:32
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();  }为什么第一次没有效果 之后就正常了呢? 请求怎么解决呢?
查看完整描述

2 回答

?
烙印99

TA贡献1829条经验 获得超13个赞

我之前也遇到了类似的问题
记录了一下你可以看看

链接


查看完整回答
反对 回复 2019-04-08
  • 2 回答
  • 0 关注
  • 2202 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信