Browse Source

fix: Menu菜单组件显示bug,renderMenuItem返回的数组存在undefined数据,导致省略菜单显示问题

陈财富 1 year ago
parent
commit
1c63757d55
1 changed files with 5 additions and 5 deletions
  1. 5 5
      src/components/Menu/src/components/useRenderMenuItem.tsx

+ 5 - 5
src/components/Menu/src/components/useRenderMenuItem.tsx

@@ -12,9 +12,10 @@ export const useRenderMenuItem = (
   menuMode: 'vertical' | 'horizontal'
 ) => {
   const renderMenuItem = (routers: AppRouteRecordRaw[], parentPath = '/') => {
-    return routers.map((v) => {
-      const meta = v.meta ?? {}
-      if (!meta.hidden) {
+    return routers
+      .filter((v) => !v.meta?.hidden)
+      .map((v) => {
+        const meta = v.meta ?? {}
         const { oneShowingChild, onlyOneChild } = hasOneShowingChild(v.children, v)
         const fullPath = isUrl(v.path) ? v.path : pathResolve(parentPath, v.path) // getAllParentPath<AppRouteRecordRaw>(allRouters, v.path).join('/')
 
@@ -48,8 +49,7 @@ export const useRenderMenuItem = (
             </ElSubMenu>
           )
         }
-      }
-    })
+      })
   }
 
   return {