diff --git a/src/menu/HeadMenu.tsx b/src/menu/HeadMenu.tsx index 1078da469..d4fa90028 100644 --- a/src/menu/HeadMenu.tsx +++ b/src/menu/HeadMenu.tsx @@ -49,8 +49,8 @@ const HeadMenu: FC = (props) => { value={currentChildListValues.includes(value.active) ? value.active : currentChildListValues[0]} onChange={value.onChange} > - {childList.map(({ props }) => ( - + {childList.map(({ props: { children, ...restProps } }) => ( + ))} diff --git a/src/menu/__tests__/menu.test.tsx b/src/menu/__tests__/menu.test.tsx index c62d82f08..8b3bb4255 100644 --- a/src/menu/__tests__/menu.test.tsx +++ b/src/menu/__tests__/menu.test.tsx @@ -170,4 +170,22 @@ describe('Menu 组件测试', () => { fireEvent.click(getByText('列表项')); expect(ulNode.style.maxHeight).not.toBe('0'); }); + + test('menu 測試 menuItem onClick事件', () => { + const clickFn = vi.fn(); + const { getByText } = render( + + + + 仪表盘 + + + + 基础列表项 + + , + ); + fireEvent.click(getByText('仪表盘')); + expect(clickFn).toHaveBeenCalledTimes(1); + }); }); diff --git a/src/tabs/TabNav.tsx b/src/tabs/TabNav.tsx index 923e03745..87e91c53c 100644 --- a/src/tabs/TabNav.tsx +++ b/src/tabs/TabNav.tsx @@ -210,6 +210,7 @@ const TabNav: React.FC = (props) => { const handleTabItemClick = (clickItem) => { tabClick(clickItem.value); onChange(clickItem.value); + clickItem?.onClick?.(clickItem.value); }; const handleTabAdd = (e) => {