fix: extra menu title follow locale change (#5006)

pull/58/MERGE
Netfan 2024-12-04 21:43:29 +08:00 committed by GitHub
parent fccbe44cf7
commit 9b73792dc9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 14 additions and 5 deletions

View File

@ -110,10 +110,19 @@ const {
sidebarVisible,
} = useMixedMenu();
function wrapperMenus(menus: MenuRecordRaw[]) {
return mapTree(menus, (item) => {
return { ...cloneDeep(item), name: $t(item.name) };
});
/**
* 包装菜单翻译菜单名称
* @param menus 原始菜单数据
* @param deep 是否深度包装对于双列布局只需要包装第一层因为更深层的数据会在扩展菜单中重新包装
*/
function wrapperMenus(menus: MenuRecordRaw[], deep: boolean = true) {
return deep
? mapTree(menus, (item) => {
return { ...cloneDeep(item), name: $t(item.name) };
})
: menus.map((item) => {
return { ...cloneDeep(item), name: $t(item.name) };
});
}
function toggleSidebar() {
@ -257,7 +266,7 @@ const headerSlots = computed(() => {
<template #mixed-menu>
<LayoutMixedMenu
:active-path="extraActiveMenu"
:menus="wrapperMenus(headerMenus)"
:menus="wrapperMenus(headerMenus, false)"
:rounded="isMenuRounded"
:theme="sidebarTheme"
@default-select="handleDefaultSelect"