vue项目中登录功能 —— 路由导航守卫控制访问权限

如果用户没有登录,但是直接通过URL访问特定页面,需要重新导航到登录页面。

// 为路由对象,添加beforeEach 导航守卫
// 挂载路由导航守卫,to表示将要访问的路径,from表示从哪里来,next是下一个要做的操作
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();

})

 

你可能感兴趣的:(vue)