From 30ca547e500bbe49d1edbb9fb7de09a2a5f729bf Mon Sep 17 00:00:00 2001 From: TianHua Liu <61778232+Taoister39@users.noreply.github.com> Date: Fri, 7 Mar 2025 12:46:30 +0800 Subject: [PATCH] fix: Notice @ts-ignore (#2896) thx --- src/components/base/base-notice.tsx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/components/base/base-notice.tsx b/src/components/base/base-notice.tsx index 59d33729..5b4b4f65 100644 --- a/src/components/base/base-notice.tsx +++ b/src/components/base/base-notice.tsx @@ -103,7 +103,6 @@ interface NoticeInstance { let parent: HTMLDivElement = null!; -// @ts-ignore export const Notice: NoticeInstance = (props) => { const { type, message, duration } = props; @@ -142,8 +141,8 @@ export const Notice: NoticeInstance = (props) => { ); }; -(["info", "error", "success"] as const).forEach((type) => { - Notice[type] = (message: ReactNode, duration?: number) => { +const createNoticeTypeFactory = + (type: keyof NoticeInstance) => (message: ReactNode, duration?: number) => { // 确保消息不为空 if (!message) { return; @@ -156,4 +155,7 @@ export const Notice: NoticeInstance = (props) => { duration: type === "error" ? 8000 : duration || 1500, }); }; -}); + +Notice.info = createNoticeTypeFactory("info"); +Notice.error = createNoticeTypeFactory("error"); +Notice.success = createNoticeTypeFactory("success");