diff --git a/src/pages/flowEditor/components/nodeEditModal.tsx b/src/pages/flowEditor/components/nodeEditModal.tsx index d381412..62e52b5 100644 --- a/src/pages/flowEditor/components/nodeEditModal.tsx +++ b/src/pages/flowEditor/components/nodeEditModal.tsx @@ -1,6 +1,6 @@ -import React, { useState, useEffect } from 'react'; +import React, { useState, useEffect, useRef } from 'react'; import { Node } from '@xyflow/react'; -import { Modal } from '@arco-design/web-react'; +import { Drawer, ResizeBox } from '@arco-design/web-react'; import { getNodeEditorByType } from '../nodeEditors'; interface NodeData { @@ -13,6 +13,7 @@ interface NodeData { } interface NodeEditModalProps { + popupContainer: any; node: Node; isOpen: boolean; onSave: (data: any) => void; @@ -20,6 +21,7 @@ interface NodeEditModalProps { } const NodeEditModal: React.FC = ({ + popupContainer, node, isOpen, onSave, @@ -49,7 +51,6 @@ const NodeEditModal: React.FC = ({ setVisible(false); onClose(); }; - // 更新节点数据的通用函数 const updateNodeData = (key: string, value: any) => { setNodeData(prev => ({ @@ -79,17 +80,23 @@ const NodeEditModal: React.FC = ({ }; return ( - popupContainer?.current || document.body} onOk={handleSave} - onCancel={handleClose} - autoFocus={false} - focusLock={true} - style={{ width: '45%' }} + onCancel={handleSave} > {getNodeEditor()} - + ); }; diff --git a/src/pages/flowEditor/index.tsx b/src/pages/flowEditor/index.tsx index 1315612..ece98a6 100644 --- a/src/pages/flowEditor/index.tsx +++ b/src/pages/flowEditor/index.tsx @@ -643,7 +643,7 @@ const FlowEditor: React.FC = () => { onNodeDragStop={onNodeDragStop} onNodeContextMenu={onNodeContextMenu} onEdgeContextMenu={onEdgeContextMenu} - onNodeDoubleClick={onNodeDoubleClick} + onNodeClick={onNodeDoubleClick} onPaneClick={onPaneClick} onPaneContextMenu={onPaneContextMenu} onEdgeMouseEnter={(_event, edge) => { @@ -672,8 +672,7 @@ const FlowEditor: React.FC = () => { > {/**/} - -
从左侧拖拽节点到画布中
+ @@ -742,6 +741,7 @@ const FlowEditor: React.FC = () => { {/*节点双击/节点编辑上下文*/}