Forráskód Böngészése

fix: showLink is false,children menu still showing

xiaoxian521 3 éve
szülő
commit
c8e90b4bd7
1 módosított fájl, 10 hozzáadás és 2 törlés
  1. 10 2
      src/store/modules/permission.ts

+ 10 - 2
src/store/modules/permission.ts

@@ -13,9 +13,17 @@ export const usePermissionStore = defineStore({
   }),
   actions: {
     asyncActionRoutes(routes) {
+      const filterTree = data => {
+        const newTree = data.filter(v => v.meta.showLink);
+        newTree.forEach(
+          v => v.children && (v.children = filterTree(v.children))
+        );
+        return newTree;
+      };
+
       if (this.wholeRoutes.length > 0) return;
-      this.wholeRoutes = ascending(this.constantRoutes.concat(routes)).filter(
-        v => v.meta.showLink
+      this.wholeRoutes = filterTree(
+        ascending(this.constantRoutes.concat(routes))
       );
 
       const getButtonAuth = (arrRoutes: Array<string>) => {