vue-router路由拦截器判断用户是否登录

使用vue-router提供的router.beforeEach来注册一个全局路由拦截

router.beforeEach(async (to, from, next) => {
  const _to = JSON.parse(localStorage.getItem('_to'));
  //不需要登录的直接放行
  if (to.meta.requiresAuth === false) {
    next()
    //如果页面需要登录,且登录失效,进入登录页面
  } else if (!_to && to.path !== '/login') {
    next({
      path: '/login'
    })
  } else {
    next()
  }

})

就是一个判断localStorage中是否存有token值,没有token就跳转到登录页面,当然,也可以存在sessionStorage中


版权声明:本文为qq_46138622原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。