1:keep-alive生效的前提,组件都要声明一个name属性,并确保唯一性
2:A/C跳转B页面,返回A/C,缓存C二级路由,则需要同时缓存一级路由A,否则缓存不生效,设置缓存需要写在beforeRouteEnter里面
beforeRouteEnter(to, from, next) {
next(vm => {
//详情->私募待办(销毁)->我的理财之后,再走我的理财->私募待办(缓存)->详情的时候,写在routeLeave的时候缓存失效
vm.$store.commit('setInclude', ['user', 'privateContractPending'])
})
},
beforeRouteLeave(to, from, next) {
if (to.name !== 'detail') {
this.$store.commit('setInclude', [])
this.$destroy()
}
next()
},
写在routeLeave中出现的问题:
A/B->A/C->D,然后D->A/C缓存这时是生效的,但是再接着继续返回到A/B,再走A/C->D,再走D->A/C发现没有缓存
beforeRouteLeave(to, from, next) {
if(to.name === 'detail'){
this.$store.commit('setInclude', ['user', 'privateContractPending'])
}else{
this.$store.commit('setInclude', [])
this.$destroy()
}
}
【信息由网络或者个人提供,如有涉及版权请联系COOY资源网邮箱处理】
© 版权声明
部分内容为互联网分享,若有侵权请联系站长删除。
THE END
暂无评论内容