一次router拦截器的应用
2024-09-01 17:54:03
实现 退出登陆 无法回退到其它页面
当有登陆状态时 可以拿其它页面的地址直接访问
若没有登陆状态 拿其它页面的地址直接访问 会报错
router.beforeEach((to, from, next) => {
if(to.name=='login'){//若是登陆页面
if(localStorage.getItem("loginStatus")&&localStorage.getItem("loginStatus")=="login"){//判断是否有登陆状态 若有就免登陆 直接跳到个人信息页
console.log("有登陆状态的 登陆的首页");
next({
name:'personalInfo'
});
return;
}else{
console.log("无登陆状态的 登陆的首页");
next();
return;
}
}else{//若不是登录页
console.log('不是登录页');
if(localStorage.getItem("loginStatus")&&localStorage.getItem("loginStatus")=="login"){//没登陆状态时 提示地址错误
next();
return;
}else if(to.name=='register'){
next();
return;
}else{
if(global.ordermark!=''&&global.lang!=''){//有没有ordermark和lang
var origin=window.location.origin;
var url;
if(process.env.NODE_ENV === 'production'){
url=origin+'/dist/#/'+global.ordermark+'/'+global.lang;
}else{
url=origin+'/#/'+global.ordermark+'/'+global.lang;
}
window.location.href=url;
return;
}else{
tools.alert("地址错误!请重新登陆");
return;
}
}
}
next();
})
最新文章
- animate动画jquery
- Eclipse下的Maven
- REMOVE ONCLICK DELAY ON WEBKIT FOR IPHONE
- PHP读取XML
- 华为手机连不上adb解决方法
- GCD的简单介绍
- highcharts 显示点值的效果
- Visual Studio 2013
- 《高性能MySQL》
- 【BZOJ 1877】 [SDOI2009]晨跑
- 1514:数值的整数次方 @jobdu
- 常用linux命令和配置
- 【转】Android理解:显式和隐式Intent---- try catch
- Swift和OC混编时, 关于@objc的作用
- Node.js : 我只需要一个店小二
- Android-----获取屏幕分辨率DisplayMetrics简介 .
- gulp inline
- 20160222.CCPP体系详解(0032天)
- 时间、日历(time、calendar、datatime)
- Python面向对象基础:设置对象属性