pref(navBar): 优化菜单标题获取逻辑和tab页管理

master
钟良源 5 months ago
parent c072be8d27
commit 80627b2c32

@ -25,13 +25,16 @@ const NavBar: React.FC<NavBarProps> = ({ selected, menuData, onTabChange, onTabC
} }
if (item.children) { if (item.children) {
const title = findMenuTitle(item.children, path); const title = findMenuTitle(item.children, path);
if (title) return title; if (title && title !== '未知页面') {
return title;
}
} }
} }
return '未知页面'; return '未知页面';
}; };
// 当选中的菜单项变化时添加新的tab // 当选中的菜单项变化时添加新的tab
useEffect(() => { useEffect(() => {
if (selected?.currentPath) { if (selected?.currentPath) {
@ -59,13 +62,11 @@ const NavBar: React.FC<NavBarProps> = ({ selected, menuData, onTabChange, onTabC
}, [selected, menuData]); }, [selected, menuData]);
const handleDeleteTab = (key: string) => { const handleDeleteTab = (key: string) => {
console.log("key:",key);
const newTabs = tabs.filter(tab => tab.key !== key); const newTabs = tabs.filter(tab => tab.key !== key);
setTabs(newTabs); setTabs(newTabs);
// 如果删除的是当前激活的tab激活第一个tab如果存在 // 如果删除的是当前激活的tab激活第一个tab如果存在
if (key === activeTab && newTabs.length > 0) { if (key === activeTab && newTabs.length > 0) {
console.log("newTabs[0].key:",newTabs[0].key);
setActiveTab(newTabs[0].key); setActiveTab(newTabs[0].key);
onTabChange?.(newTabs[0].path); onTabChange?.(newTabs[0].path);
} }

Loading…
Cancel
Save