diff --git a/packages/amis-core/src/utils/debug.tsx b/packages/amis-core/src/utils/debug.tsx index c2b3e4f8aba..3f8f5b6193e 100644 --- a/packages/amis-core/src/utils/debug.tsx +++ b/packages/amis-core/src/utils/debug.tsx @@ -181,7 +181,7 @@ const AMISDebug = observer(({store}: {store: AMISDebugStore}) => { } } - const panelRef = useRef(null); + const panelRef = useRef(null); const [isResizing, setResizing] = useState(false); @@ -220,6 +220,19 @@ const AMISDebug = observer(({store}: {store: AMISDebugStore}) => { }; }, [isResizing]); + // 避免触发 modal 的 closeOnOutside 逻辑 + useEffect(() => { + const handlePanelMouseUp = (e: Event) => { + e.preventDefault(); + }; + + panelRef.current!.addEventListener('mouseup', handlePanelMouseUp); + + return () => { + panelRef.current!.removeEventListener('mouseup', handlePanelMouseUp); + }; + }, []); + const handleInputKeyUp = React.useCallback((e: React.KeyboardEvent) => { if (e.key === 'Enter') { const input = e.target as HTMLInputElement; @@ -290,7 +303,7 @@ const AMISDebug = observer(({store}: {store: AMISDebugStore}) => { store.tab = 'log'; }} > - Log + Log({store.logs.length})