vue优雅的404跳转重新登陆的操作
应用场景:在404页面,因为系统登录需要用到很多鉴权类的校验,每一个版本的权限还不相同,需要在初始化的时候重新获取,直接清除缓存重新跳转登录页再请求的操作
关键代码如下:
APP.vue
<router-view v-if="isRouterAlive"></router-view>
data() {
return {
isRouterAlive:true
}
},
// 通过provide提供reload方法给后代组件
provide(){
return {
reload: this.reload
}
},
methods: {
async reload(){
this.isRouterAlive = false
setTimeout(function () {
window.location.reload();
this.isRouterAlive = true
}, 100);
}
},
子代组件:
//通过inject获取祖先元素的reload方法
inject: ["reload"],
简单记录,不一定最优,欢迎提出修改