diff --git a/src/TabNavList/OperationNode.tsx b/src/TabNavList/OperationNode.tsx index bb71adf6..972da8fd 100644 --- a/src/TabNavList/OperationNode.tsx +++ b/src/TabNavList/OperationNode.tsx @@ -4,7 +4,7 @@ import Menu, { MenuItem } from 'rc-menu'; import KeyCode from 'rc-util/lib/KeyCode'; import * as React from 'react'; import { useEffect, useState } from 'react'; -import type { EditableConfig, Tab, TabsLocale } from '../interface'; +import type { EditableConfig, Tab, TabsLocale, MoreProps } from '../interface'; import { getRemovable } from '../util'; import AddButton from './AddButton'; @@ -18,8 +18,7 @@ export interface OperationNodeProps { tabBarGutter?: number; activeKey: string; mobile: boolean; - moreIcon?: React.ReactNode; - moreTransitionName?: string; + more?: MoreProps; editable?: EditableConfig; locale?: TabsLocale; removeAriaLabel?: string; @@ -36,8 +35,7 @@ const OperationNode = React.forwardRef((prop tabs, locale, mobile, - moreIcon = 'More', - moreTransitionName, + more: moreProps = {}, style, className, editable, @@ -52,6 +50,8 @@ const OperationNode = React.forwardRef((prop const [open, setOpen] = useState(false); const [selectedKey, setSelectedKey] = useState(null); + const { icon: moreIcon = 'More' } = moreProps; + const popupId = `${id}-more-popup`; const dropdownPrefix = `${prefixCls}-dropdown`; const selectedItemId = selectedKey !== null ? `${popupId}-${selectedKey}` : null; @@ -190,14 +190,13 @@ const OperationNode = React.forwardRef((prop