|
|
|
@ -53,11 +53,21 @@ const staticMenus: Menu[] = []; |
|
|
|
|
|
|
|
async function getAsyncMenus() { |
|
|
|
const permissionStore = usePermissionStore(); |
|
|
|
//递归过滤所有隐藏的菜单
|
|
|
|
const menuFilter = (items) => { |
|
|
|
return items.filter((item) => { |
|
|
|
const show = !item.meta?.hideMenu && !item.hideMenu; |
|
|
|
if (show && item.children) { |
|
|
|
item.children = menuFilter(item.children); |
|
|
|
} |
|
|
|
return show; |
|
|
|
}); |
|
|
|
}; |
|
|
|
if (isBackMode()) { |
|
|
|
return permissionStore.getBackMenuList.filter((item) => !item.meta?.hideMenu && !item.hideMenu); |
|
|
|
return menuFilter(permissionStore.getBackMenuList); |
|
|
|
} |
|
|
|
if (isRouteMappingMode()) { |
|
|
|
return permissionStore.getFrontMenuList.filter((item) => !item.hideMenu); |
|
|
|
return menuFilter(permissionStore.getFrontMenuList); |
|
|
|
} |
|
|
|
return staticMenus; |
|
|
|
} |
|
|
|
|