From 53db73bd41248a1c13c71d9a8e41d7b83e21e1fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=A2=81=E6=9C=9D=E9=A3=9E?= Date: Fri, 18 Oct 2024 18:06:08 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BC=98=E5=8C=96getEllipsisConfig?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../design/src/_util/getEllipsisConfig.ts | 36 +++++++++---------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/packages/design/src/_util/getEllipsisConfig.ts b/packages/design/src/_util/getEllipsisConfig.ts index 3993f4dfc..cf444645c 100644 --- a/packages/design/src/_util/getEllipsisConfig.ts +++ b/packages/design/src/_util/getEllipsisConfig.ts @@ -1,27 +1,27 @@ import React, { isValidElement } from 'react'; import type { ReactElement, ReactNode } from 'react'; import type { EllipsisConfig } from '../typography'; -import type { TooltipPlacement } from '../tooltip'; export type Ellipsis = boolean | EllipsisConfig; export function getEllipsisConfig(ellipsis?: Ellipsis, children?: ReactNode): Ellipsis { const childrenType = (children as ReactElement)?.type as any; - return typeof ellipsis === 'object' - ? { - ...ellipsis, - tooltip: - // 如果目标元素已经被 Tooltip 包裹,则去掉默认的 Tooltip,避免有两个 Tooltip - childrenType?.__ANT_TOOLTIP - ? undefined - : { - // TooltipProps - ...(typeof ellipsis.tooltip === 'object' && !isValidElement(ellipsis.tooltip) - ? ellipsis.tooltip - : { - title: ellipsis.tooltip, - }), - }, - } - : ellipsis; + if (typeof ellipsis === 'object' && ellipsis !== null) { + return { + ...ellipsis, + tooltip: + // 如果目标元素已经被 Tooltip 包裹,则去掉默认的 Tooltip,避免有两个 Tooltip + childrenType?.__ANT_TOOLTIP + ? undefined + : { + // TooltipProps + ...(typeof ellipsis.tooltip === 'object' && !isValidElement(ellipsis.tooltip) + ? ellipsis.tooltip + : { + title: ellipsis.tooltip, + }), + }, + }; + } + return ellipsis ?? false; }