提交 abf04bbc 作者: 方治民

fix(router): 修复动态路由 name 不唯一导致的路由覆盖问题

上级 42f9bf12
...@@ -24,6 +24,10 @@ function asyncImportRoute(routes: AppRouteRecordRaw[] | undefined) { ...@@ -24,6 +24,10 @@ function asyncImportRoute(routes: AppRouteRecordRaw[] | undefined) {
if (!item.component && item.meta?.frameSrc) { if (!item.component && item.meta?.frameSrc) {
item.component = 'IFRAME' item.component = 'IFRAME'
} }
// FIXD: 修复动态路由的唯一标识问题
item.name = item.uid || item.name
const { component, name } = item const { component, name } = item
const { children } = item const { children } = item
if (component) { if (component) {
......
...@@ -9,6 +9,7 @@ export type Component<T = any> = ...@@ -9,6 +9,7 @@ export type Component<T = any> =
// @ts-ignore // @ts-ignore
export interface AppRouteRecordRaw extends Omit<RouteRecordRaw, 'meta'> { export interface AppRouteRecordRaw extends Omit<RouteRecordRaw, 'meta'> {
uid?: string
name: string name: string
meta: RouteMeta meta: RouteMeta
component?: Component | string component?: Component | string
......
...@@ -25,6 +25,7 @@ const setting: ProjectConfig = { ...@@ -25,6 +25,7 @@ const setting: ProjectConfig = {
// Permission mode // Permission mode
permissionMode: PermissionModeEnum.ROUTE_MAPPING, permissionMode: PermissionModeEnum.ROUTE_MAPPING,
// permissionMode: PermissionModeEnum.BACK,
// Permission-related cache is stored in sessionStorage or localStorage // Permission-related cache is stored in sessionStorage or localStorage
permissionCacheType: CacheTypeEnum.LOCAL, permissionCacheType: CacheTypeEnum.LOCAL,
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论