update home
This commit is contained in:
@@ -8,6 +8,7 @@ import { routes } from 'vue-router/auto-routes'
|
||||
|
||||
import App from './App.vue'
|
||||
import { setTokenGetter } from './utils/request'
|
||||
import { isAdminOnlyPath } from '@/constants/permissions'
|
||||
|
||||
const router = createRouter({
|
||||
history: createWebHistory(import.meta.env.BASE_URL),
|
||||
@@ -26,7 +27,6 @@ setTokenGetter(() => useUserStore().token)
|
||||
|
||||
// 路由守卫
|
||||
const authWhitelist = ['/login', '/register']
|
||||
const adminOnlyPaths = ['/users', '/mq-status', '/roles', '/route-groups']
|
||||
|
||||
router.beforeEach(async (to) => {
|
||||
const { useUserStore } = await import('./stores/user')
|
||||
@@ -55,8 +55,8 @@ router.beforeEach(async (to) => {
|
||||
}
|
||||
}
|
||||
|
||||
// 角色权限检查:非 admin 不能访问受限路由
|
||||
if (adminOnlyPaths.includes(to.path) && !userStore.isAdmin) {
|
||||
// 角色权限检查:非 admin 不能访问受限路由(前缀匹配)
|
||||
if (isAdminOnlyPath(to.path) && !userStore.isAdmin) {
|
||||
message.error('无权访问')
|
||||
return '/'
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user