From 08a9398a19f6515fb4bb7e2ec2c722b917a45beb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=A2=AB=E9=9B=A8=E6=B0=B4=E8=BF=87=E6=BB=A4=E7=9A=84?= =?UTF-8?q?=E7=A9=BA=E6=B0=94-Rairn?= <958414905@qq.com> Date: Tue, 27 Jun 2023 10:42:00 +0800 Subject: [PATCH] fix: fix dialog does not appear (#2134) --- .../core/client/src/schema-settings/SchemaSettings.tsx | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/packages/core/client/src/schema-settings/SchemaSettings.tsx b/packages/core/client/src/schema-settings/SchemaSettings.tsx index c0108a4d5..3c6d987cf 100644 --- a/packages/core/client/src/schema-settings/SchemaSettings.tsx +++ b/packages/core/client/src/schema-settings/SchemaSettings.tsx @@ -28,7 +28,6 @@ import React, { useMemo, // @ts-ignore useTransition as useReactTransition, - useRef, useState, } from 'react'; import { createPortal } from 'react-dom'; @@ -148,7 +147,6 @@ export const SchemaSettings: React.FC & SchemaSettingsNeste const { title, dn, ...others } = props; const [visible, setVisible] = useState(false); const { Component, getMenuItems } = useMenuItem(); - const menuItems = useRef([]); const [isPending, startTransition] = useReactTransition(); const changeMenu = (v: boolean) => { @@ -157,19 +155,17 @@ export const SchemaSettings: React.FC & SchemaSettingsNeste }); }; - if (visible) { - menuItems.current = getMenuItems(() => props.children); - } + const items = getMenuItems(() => props.children); const dropdownMenu = () => ( <> - {visible ? : null} + { changeMenu(!visible); }} - menu={{ items: menuItems.current, className: classNames({ [hidden]: !visible }) }} + menu={{ items, className: classNames({ [hidden]: !visible }) }} overlayClassName={overlayClassName} > {typeof title === 'string' ? {title} : title}