Skip to content

Commit 0256d8b

Browse files
feat: _internalRenderSubMenuItem and _internalRenderMenuItem support selected (#432)
* _internalRenderSubMenuItem and _internalRenderMenuItem support selected * use stateProps Co-authored-by: 期贤 <[email protected]>
1 parent d6b1eb0 commit 0256d8b

File tree

3 files changed

+10
-2
lines changed

3 files changed

+10
-2
lines changed

src/Menu.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,9 @@ export interface MenuProps
120120
_internalRenderMenuItem?: (
121121
originNode: React.ReactElement,
122122
menuItemProps: any,
123+
stateProps: {
124+
selected: boolean;
125+
},
123126
) => React.ReactElement;
124127
/***
125128
* @private Only used for `pro-layout`. Do not use in your prod directly
@@ -128,6 +131,9 @@ export interface MenuProps
128131
_internalRenderSubMenuItem?: (
129132
originNode: React.ReactElement,
130133
subMenuItemProps: any,
134+
stateProps: {
135+
selected: boolean;
136+
},
131137
) => React.ReactElement;
132138
}
133139

src/MenuItem.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -244,7 +244,7 @@ const InternalMenuItem = (props: MenuItemProps) => {
244244
);
245245

246246
if (_internalRenderMenuItem) {
247-
renderNode = _internalRenderMenuItem(renderNode, props);
247+
renderNode = _internalRenderMenuItem(renderNode, props, { selected });
248248
}
249249

250250
return renderNode;

src/SubMenu/index.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -355,7 +355,9 @@ const InternalSubMenu = (props: SubMenuProps) => {
355355
);
356356

357357
if (_internalRenderSubMenuItem) {
358-
listNode = _internalRenderSubMenuItem(listNode, props);
358+
listNode = _internalRenderSubMenuItem(listNode, props, {
359+
selected: childrenSelected,
360+
});
359361
}
360362

361363
// >>>>> Render

0 commit comments

Comments
 (0)