Vue之路由拦截器

vue有请求拦截和路由拦截(本文是路由拦截),通过路由进行判断

router.beforeEach((to, from, next)=> {
#从浏览器sessionStorage获取存储的登录token(我这里简化为uid)
  let uid = window.sessionStorage.getItem('uid');
  # 如果有uid即登录了则不进行拦截 next
  if (uid) {
    next()
  } else {
  # 否则进行判断 to.path 下一步跳转的界面path,如果下一步要去登录界面 不进行拦截(我这里的 / 是登录页面的path 也可以换成to.name 但值要变成登录页面的name)
    if (to.path == '/') {
      next()
    } else {
    # 如果不是登录页面而且没有token则跳转登录界面
      next('/')
    }
  }
})

你可能感兴趣的:(Vue之路由拦截器)