|
|
@ -2,7 +2,7 @@ import type { Router } from 'vue-router'; |
|
|
|
import { configureDynamicParamsMenu } from '../helper/menuHelper'; |
|
|
|
import { configureDynamicParamsMenu } from '../helper/menuHelper'; |
|
|
|
import { Menu } from '../types'; |
|
|
|
import { Menu } from '../types'; |
|
|
|
import { usePermissionStoreWithOut } from '/@/store/modules/permission'; |
|
|
|
import { usePermissionStoreWithOut } from '/@/store/modules/permission'; |
|
|
|
import { merge } from 'lodash-es'; |
|
|
|
import { merge, omit } from 'lodash-es'; |
|
|
|
|
|
|
|
|
|
|
|
export function createParamMenuGuard(router: Router) { |
|
|
|
export function createParamMenuGuard(router: Router) { |
|
|
|
const permissionStore = usePermissionStoreWithOut(); |
|
|
|
const permissionStore = usePermissionStoreWithOut(); |
|
|
@ -20,8 +20,8 @@ export function createParamMenuGuard(router: Router) { |
|
|
|
let menus: Menu[] = permissionStore.getMenuList; |
|
|
|
let menus: Menu[] = permissionStore.getMenuList; |
|
|
|
menus.forEach((item) => configureDynamicParamsMenu(item, to.params)); |
|
|
|
menus.forEach((item) => configureDynamicParamsMenu(item, to.params)); |
|
|
|
// 处理路由切换动态替换vue-router自定义元数据
|
|
|
|
// 处理路由切换动态替换vue-router自定义元数据
|
|
|
|
if (to.query?.enableMetaMerge === 'y') { |
|
|
|
if (to.query?.openMetaUpdate === 'y') { |
|
|
|
merge(to.meta, to.query); |
|
|
|
merge(to.meta, omit(to.query, 'openMetaUpdate')); |
|
|
|
} |
|
|
|
} |
|
|
|
next(); |
|
|
|
next(); |
|
|
|
}); |
|
|
|
}); |
|
|
|