From f2244ffaf3d2847551e0a1d0e60d834dce235055 Mon Sep 17 00:00:00 2001 From: cKey <35512826+colinin@users.noreply.github.com> Date: Wed, 1 Feb 2023 14:06:20 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E9=9A=90=E8=97=8F=E8=8F=9C?= =?UTF-8?q?=E5=8D=95=E7=9B=AE=E5=BD=95=E5=8F=AA=E8=83=BD=E9=9A=90=E8=97=8F?= =?UTF-8?q?=E7=AC=AC=E4=B8=80=E5=B1=82=E7=9B=AE=E5=BD=95=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=EF=BC=8C=E9=80=92=E5=BD=92=E9=9A=90=E8=97=8F=E6=89=80?= =?UTF-8?q?=E6=9C=89=E5=AD=90=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(menu): 解决隐藏菜单目录只能隐藏第一层目录的问题,递归隐藏所有子菜单 --- apps/vue/src/router/menus/index.ts | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/apps/vue/src/router/menus/index.ts b/apps/vue/src/router/menus/index.ts index bf677214d..014d75722 100644 --- a/apps/vue/src/router/menus/index.ts +++ b/apps/vue/src/router/menus/index.ts @@ -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; }