From 5363d97d141127429ca365ef7b723b8679748f13 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期二, 24 九月 2024 17:04:22 +0800 Subject: [PATCH] # --- zy-acs-flow/src/layout/MyMenu.jsx | 44 ++++++++++++++++++++++++++++---------------- 1 files changed, 28 insertions(+), 16 deletions(-) diff --git a/zy-acs-flow/src/layout/MyMenu.jsx b/zy-acs-flow/src/layout/MyMenu.jsx index b996e97..695c6ea 100644 --- a/zy-acs-flow/src/layout/MyMenu.jsx +++ b/zy-acs-flow/src/layout/MyMenu.jsx @@ -12,12 +12,12 @@ import SubMenu from './SubMenu'; import SettingsIcon from '@mui/icons-material/Settings'; import DashboardIcon from '@mui/icons-material/Dashboard'; -import DehazeIcon from '@mui/icons-material/Dehaze'; +import HorizontalRuleIcon from '@mui/icons-material/HorizontalRule'; import PersonIcon from '@mui/icons-material/Person'; import * as Icons from '@mui/icons-material'; const getIconComponent = (iconStr) => { - return Icons[iconStr] || DehazeIcon; + return Icons[iconStr] || HorizontalRuleIcon; }; export const MyMenu = ({ dense = false }) => { @@ -33,6 +33,14 @@ for (const parentRoute of parentRoutes) { setState(state => ({ ...state, [parentRoute]: true })); } + + // default open sub menu + const defaultExpandMenu = ["menu.warehouse", "menu.dispatcher", "menu.equipment"]; + permissions.forEach(item => { + if (defaultExpandMenu.includes(item.name)) { + setState(state => ({ ...state, [item.route]: true })); + } + }); }, [location.pathname, permissions]); const handleToggle = (menu) => { @@ -41,7 +49,9 @@ const getIcon = (iconStr) => { const IconComponent = getIconComponent(iconStr); - return <IconComponent />; + if (IconComponent) { + return <IconComponent />; + } }; const generateMenu = (permissions) => { @@ -60,19 +70,21 @@ </SubMenu> ); } else { - return ( - <MenuItemLink - key={node.id} - to={node.component} // correspond to Resource.name - state={{ _scrollToTop: true }} - // primaryText={translate(`resources.orders.name`, { - // smart_count: 2, - // })} - primaryText={node.name} - leftIcon={getIcon(node.icon)} - dense={dense} - /> - ); + if (node.component) { + return ( + <MenuItemLink + key={node.id} + to={node.component} // correspond to Resource.name + state={{ _scrollToTop: true }} + // primaryText={translate(`resources.orders.name`, { + // smart_count: 2, + // })} + primaryText={node.name} + leftIcon={getIcon(node.icon)} + dense={dense} + /> + ); + } } }); }; -- Gitblit v1.9.1