Selaa lähdekoodia

fix: 改进诊断日志,输出路径+重复检测

输出 wholeMenus 中每条记录的 path/title/rank,
并检测重复路径,帮助定位去重失效原因。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
skyline 1 viikko sitten
vanhempi
säilyke
8376293443
1 muutettua tiedostoa jossa 7 lisäystä ja 4 poistoa
  1. 7 4
      haha-admin-web/src/views/system/menu/utils/hook.tsx

+ 7 - 4
haha-admin-web/src/views/system/menu/utils/hook.tsx

@@ -310,11 +310,14 @@ export function useMenu() {
           try {
             await initRouter();
             await nextTick();
-            // 诊断:检查 wholeMenus 中一级菜单的排序是否与数据库一致
+            // 诊断:输出所有一级菜单的路径、标题和 rank
             const topMenus = usePermissionStoreHook().wholeMenus
-              .filter((m: any) => m.meta?.rank > 0)
-              .map((m: any) => `${m.meta?.title}(${m.meta?.rank})`);
-            console.log("[menu-sort] 侧边栏一级菜单顺序:", topMenus.join(" → "));
+              .map((m: any) => `${m.meta?.title || "?"}(${m.meta?.rank},${m.path})`);
+            console.log("[menu-sort] wholeMenus 一级菜单:", topMenus);
+            // 检查重复路径
+            const paths = usePermissionStoreHook().wholeMenus.map((m: any) => m.path);
+            const dupes = paths.filter((p, i) => paths.indexOf(p) !== i);
+            if (dupes.length > 0) console.warn("[menu-sort] 重复路径:", dupes);
             emitter.emit("menuRefresh");
           } catch (e) {
             console.error("侧边栏路由刷新失败:", e);