sgxt_web/src/permission.js

56 lines
1.6 KiB
JavaScript
Raw Normal View History

2025-04-12 14:54:02 +08:00
import router from './router'
import store from './store'
import {
setItem,
getItem,
removeAllItem
} from "@/utils/storage";
// 白名单
2025-04-14 19:48:42 +08:00
const whiteList = ['/login','/', '/FourColorWarning','/oatuh_login','/editPassword', '/404', '/401']
2025-04-12 14:54:02 +08:00
/**
* 路由前置守卫
* to 去哪里
* from 来自哪
* next 往下走
*/
2025-04-14 19:48:42 +08:00
// let onRun = true;
// router.beforeEach(async (to, from, next) => {
// // 存在 token ,进入主页
// // if (store.state.user.token) {
// // 快捷访问
// if (store.getters.token) {
// // 判断用户资料是否获取
// // 若不存在用户信息,则需要获取用户信息
// // 触发获取用户信息的 action并获取用户当前权限
// await store.commit('permission/setRouteReady', true)
// // 添加完动态路由之后,需要在进行一次主动跳转
// const afterMenuList = await getItem('menusPermission');
// // 处理用户权限,筛选出需要添加的权限
// if (store.state.permission.routes == 0) {
// const filterRoutes = await store.dispatch('permission/filterRoutes', afterMenuList)
// filterRoutes.forEach(item => {
// router.addRoute(item)
// })
// next({
// ...to,
// replace: true
// })
// } else {
// next()
// }
// // 利用 addRoute 循环添加
// } else {
// const isOatuh = getItem('isOatuh')
// // 没有token的情况下可以进入白名单
// if (whiteList.indexOf(to.path) > -1) {
// next()
// } else {
// if (isOatuh) {
// next('/oatuh_login')
// } else {
// next('/login')
// }
// }
// }
// })