diff --git a/src/components/Menu/src/components/useRenderMenuItem.tsx b/src/components/Menu/src/components/useRenderMenuItem.tsx index 301313f..0132652 100644 --- a/src/components/Menu/src/components/useRenderMenuItem.tsx +++ b/src/components/Menu/src/components/useRenderMenuItem.tsx @@ -9,7 +9,7 @@ const { renderMenuTitle } = useRenderMenuTitle() export const useRenderMenuItem = () => // allRouters: AppRouteRecordRaw[] = [], { - const renderMenuItem = (routers: AppRouteRecordRaw[], parentPath = '/') => { + const renderMenuItem = (routers: AppRouteRecordRaw[], parentPath = '/', nested = false) => { return routers .filter((v) => !v.meta?.hidden) .map((v) => { @@ -27,7 +27,8 @@ export const useRenderMenuItem = () => index={onlyOneChild ? pathResolve(fullPath, onlyOneChild.path) : fullPath} > {{ - default: () => renderMenuTitle(onlyOneChild ? onlyOneChild?.meta : meta) + default: () => + renderMenuTitle(onlyOneChild ? onlyOneChild?.meta : meta, !nested) }} ) @@ -35,8 +36,8 @@ export const useRenderMenuItem = () => return ( {{ - title: () => renderMenuTitle(meta), - default: () => renderMenuItem(v.children!, fullPath) + title: () => renderMenuTitle(meta, !nested), + default: () => renderMenuItem(v.children!, fullPath, true) }} ) diff --git a/src/components/Menu/src/components/useRenderMenuTitle.tsx b/src/components/Menu/src/components/useRenderMenuTitle.tsx index 5c3dde8..838423e 100644 --- a/src/components/Menu/src/components/useRenderMenuTitle.tsx +++ b/src/components/Menu/src/components/useRenderMenuTitle.tsx @@ -5,11 +5,11 @@ import { AppIcon } from '@/components/AppIcon' import { useI18n } from '@/hooks/web/useI18n' export const useRenderMenuTitle = () => { - const renderMenuTitle = (meta: RouteMeta) => { + const renderMenuTitle = (meta: RouteMeta, showIcon = true) => { const { t } = useI18n() const { title = 'Please set title', icon } = meta - return icon ? ( + return icon && showIcon ? ( <> diff --git a/src/components/Setting/src/Setting.vue b/src/components/Setting/src/Setting.vue index 6f25ee1..e60cf2d 100644 --- a/src/components/Setting/src/Setting.vue +++ b/src/components/Setting/src/Setting.vue @@ -195,7 +195,7 @@ const themeChange = () => { - + diff --git a/src/views/permission/composables/useMenuManagement.js b/src/views/permission/composables/useMenuManagement.js index 0d91b28..a5d8156 100644 --- a/src/views/permission/composables/useMenuManagement.js +++ b/src/views/permission/composables/useMenuManagement.js @@ -93,7 +93,7 @@ export function useMenuManagement() { routePath: raw.path || '', routeName: raw.name || '', component: raw.component === '#' ? '' : raw.component || '', - icon: normalizeAppIcon(raw.icon), + icon: raw.type === 'CATALOG' ? normalizeAppIcon(raw.icon) : '', permissionCode: raw.permissionCode || '', type: raw.type || 'MENU', sort: raw.sort ?? 1, @@ -113,7 +113,7 @@ export function useMenuManagement() { routePath: form.routePath.trim(), routeName: form.routeName.trim(), component: form.type === 'CATALOG' ? '#' : form.component.trim(), - icon: form.type === 'BUTTON' ? '' : normalizeAppIcon(form.icon), + icon: form.type === 'CATALOG' ? normalizeAppIcon(form.icon) : '', permissionCode: form.permissionCode.trim(), type: form.type, sort: Number(form.sort) || 1,