// 引入路由 补充路由守卫, 导出路由
import store from '../store/index'
import router from './index'
const vip = ['/setting']
router.beforeEach((to, from, next) => {
if (vip.includes(to.path)) {
// 判断有没有token,有token任何页面都可以访问
if (store.state.tokenInfo.token) {
next()
} else {
// 没有token但是访问需要有token才能访问的页面,就跳到登录页面同时需要把当前页面的路径也返回回去
// 这样,在登录成功的时候,通过当前页面的路径就能跳回去
next('/login?backto=' + encodeURIComponent(to.fullPath))
}
// 有token的情况下还去访问登录页面,就跳到首页,不让它到登录页
} else if (store.state.tokenInfo.token && to.path === '/login') { next('/') } else {
next()
}
})
export default router
下一篇:完整的请求拦截器和响应拦截器