diff --git a/src/permission.js b/src/permission.js index 46773cb..8266635 100644 --- a/src/permission.js +++ b/src/permission.js @@ -62,3 +62,28 @@ // // finish progress bar // NProgress.done() // }) + +// 路由守卫, 控制页面的访问权限 +import router from '@/router' +import store from '@/store' + +const whiteList = ['/login', '/404'] + +// 全局前置路由守卫 +router.beforeEach((to, from, next) => { + // 判断是否有token + if (store.getters.token) { // 有token + if (to.path === '/login') { // 在登录页 + next('/') + } else { + next() + } + } else { // 没有token + if (whiteList.indexOf(to.path) > -1) { // 在白名单 + next() + } else { + next('/login') + console.log('aaa') + } + } +}) diff --git a/src/store/getters.js b/src/store/getters.js index 7c8ed91..06d280c 100644 --- a/src/store/getters.js +++ b/src/store/getters.js @@ -9,6 +9,7 @@ const getters = { sidebar: state => state.app.sidebar, - device: state => state.app.device + device: state => state.app.device, + token: state => state.user.token } export default getters