需求:
当别人直接使用链接地址打开我们项目时,我们为了安全和用户信息考虑,我们就可以对路由跳转做导航守卫,以便用户未登录时,跳转登录页,已经登录的,可直接去往想要的页面
话不多说,上代码:
// 为路由对象,添加beforeEach导航守卫router.beforeEach((to,from, next)=> {//如果用户访问的登录页,直接放行if(to.path === '/login') return next()//从sessionStorage中获取到保存的token值const tokenStr = window.sessionStorage.getItem('token')//没有token,强制跳转到登录页if(!tokenStr) return next('/login')next()})
另外,当我们退出登录时,我们就可以做清空token的效果和回到登录页
//清空tokenWindow.sessionStorage.clear()//跳转到登录页this.$router.push('/login')
对于token怎么存,可以移步
(47条消息) 请求网络时检查token,对网络请求做处理(axios)(vue)_秃秃秃了的博客-CSDN博客/weixin_61285710/article/details/122626785?spm=1001..3001.5502
不会封装网络?可以移步
(47条消息) 全局封装网络,统一请求接口(vue)(axios)_秃秃秃了的博客-CSDN博客/weixin_61285710/article/details/122625526?spm=1001..3001.5501