欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

前置守卫-包含白名单

程序员文章站 2022-03-03 10:12:29
...
import router from '@/router'
import store from '@/store'
// 创建白名单
const widthList = ['/login', '/404']
// 创建前置守卫
router.beforeEach((to, from, next) => {
  // 获取token
  const token = store.state.user.token
  // 如果有Token
  if (token) {
    // 如果去的是登录页
    if (to.path === '/login') {
      // 跳转首页
      next('/')
    } else {
      // 否则放行
      next()
    }
    // 没有Token
  } else {
    // 如果是白名单
    if (widthList.includes(to.path)) {
      // 放行
      next()
    } else {
      // 否则回条登录页
      next('/login')
    }
  }
})
相关标签: javascript vue.js