refactor: update icon render for menu

update icon render function for the menu

Change-Id: I16e27fe7bed46dd979b5a112a9c8fe926d6f5043
This commit is contained in:
zhangjingwei 2024-01-26 14:43:16 +08:00
parent 1919a36870
commit 8a1d7ab034

View File

@ -123,12 +123,17 @@ export class LayoutMenu extends Component {
}
};
renderMenuItem = (item) => {
// eslint-disable-next-line no-unused-vars
renderMenuItemIcon = ({ item, collapsed, isSubMenu }) => {
return item.icon;
};
renderMenuItem = (item, isSubMenu) => {
const { collapsed, hover } = this.state;
if (collapsed && !hover) {
return (
<Menu.Item key={item.key} className={styles['menu-item-collapsed']}>
{item.icon}
{this.renderMenuItemIcon({ item, collapsed, isSubMenu })}
</Menu.Item>
);
}
@ -150,7 +155,7 @@ export class LayoutMenu extends Component {
onClick={this.onClickMenuItem}
>
{/* <Menu.Item key={item.key} className={styles['menu-item-no-child']}> */}
{item.icon}
{this.renderMenuItemIcon({ item, isSubMenu })}
<span
className={
item.level === 0 || (item.level === 1 && !showChildren)
@ -171,7 +176,7 @@ export class LayoutMenu extends Component {
}
const title = (
<span>
{item.icon}
{this.renderMenuItemIcon({ item })}
<span className={styles['menu-item-title']}>
{item.name.length >= this.maxTitleLength ? (
<Tooltip title={item.name} placement="right">
@ -183,7 +188,9 @@ export class LayoutMenu extends Component {
</span>
</span>
);
const subMenuItems = item.children.map((it) => this.renderMenuItem(it));
const subMenuItems = item.children.map((it) =>
this.renderMenuItem(it, true)
);
return (
<SubMenu key={item.key} title={title} className={styles['sub-menu']}>