将 web-admin 从子模块改为仓库内普通目录,便于单仓克隆与维护。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
zlwuandCursor committed 2026-05-12 16:41:08 +08:00
1 parent 2e9d020d50
commit c87732fcd5
515 files changed
+74372 -1

No files matched your search

@@ -0,0 +1,36 @@
import type { AppRouteRecord } from '@/types/router'
/**
* 与侧栏渲染(SidebarSubmenu)一致的菜单过滤,用于收集展开 index 等逻辑,
* 避免「原始树」与「实际渲染的 ElSubMenu」不一致导致 open(index) 无效。
*/
export function isSidebarNavigableRoute(item: AppRouteRecord): boolean {
return !!(
!item.meta.isHide &&
((item.path && item.path.trim()) || item.meta.link || item.meta.isIframe === true) &&
(item.component || item.meta.link || item.meta.isIframe === true)
)
}
/**
* 递归过滤侧栏菜单路由(与 SidebarSubmenu.filterRoutes 行为一致)
*/
export function filterSidebarRoutes(items: AppRouteRecord[]): AppRouteRecord[] {
return items
.filter((item) => {
if (item.meta.isHide) {
return false
}
if (item.children && item.children.length > 0) {
const filteredChildren = filterSidebarRoutes(item.children)
return filteredChildren.length > 0 || isSidebarNavigableRoute(item)
}
return isSidebarNavigableRoute(item)
})
.map((item) => ({
...item,
children: item.children ? filterSidebarRoutes(item.children) : undefined
}))
}