总结:Vue项目中的报错:vue-router.esm.js?8b48:2007 Uncaught (in promise)
遇到的情景:router.beforeEach((to,from,next) => {const flag = sessionStorage.getItem("isLogin");if(!token){next('/login)}else{next();}});因为如果我们手动在地址栏填写路径'/logi...
·
遇到的情景:
router.beforeEach((to,from,next) => {
const flag = sessionStorage.getItem("isLogin");
if(!token){
next('/login)
}else{
next();
}
});
因为如果我们手动在地址栏填写路径'/login'或者项目默认进入时登录页的时候就会报错,根据报错提示为死循环
解决办法:
在限制条件把去登录页单独拿出来判断
router.beforeEach((to,from,next) => {
const flag = sessionStorage.getItem("isLogin");
if(!token && to.name.indexOf('login') < 0){
next('/login)
}else{
next();
}
});
更多推荐
已为社区贡献8条内容
所有评论(0)