Open
Description
🐛 Bug 描述 Bug description
- 非 '/'开始的 path 名字相同,被认为是激活了同个路由
path: "index"
看了下源码
// packages/pro-layout/src/components/SiderMenu/BaseMenu.tsx
// 这里 memu key 使用的是 path
- getMenuData, clearMenuItem typescript 类型兼容eslint报错, 只能加 any; 源码拷贝到本地是不报错的
const { menuData } = getMenuData(clearMenuItem(router.getRoutes() as any));
- clearMenuItem 关于 name 强制绑定这个明显在 vue 中是有问题的
// 代码使用了 to -> name 来跳转
- getMenuData 强制了路由数据结构必须是以跟节点开始展示, 但业务开发不一定以'/' 开始,可能是一个前端微应用。
也可能是一个常驻路由和业务路由分开的路由。
const router = [{
path: '/',
name: xxx
children: [xxx]
}]
- 面包屑参考
vue-element-admin
🏞 期望结果 Desired result
- 分离菜单底层组件强制绑定的 name
- path 非
/
开头的建议使用 fullpath,其实 formatRelativePath 已经实现