pref(flowEditor): 优化节点添加弹窗的交互

master
钟良源 3 months ago
parent bc76be9f34
commit 11a0f992c0

@ -154,7 +154,8 @@ const FlowEditorMain: React.FC<FlowEditorMainProps> = (props) => {
newSet.delete(appId);
return newSet;
});
} else {
}
else {
// 隐藏节点 - 添加到隐藏节点集合
setHiddenNodes(prev => new Set(prev).add(appId));
}
@ -188,7 +189,8 @@ const FlowEditorMain: React.FC<FlowEditorMainProps> = (props) => {
newSet.delete(appId);
return newSet;
});
} else {
}
else {
// 隐藏节点 - 添加到隐藏节点集合
setHiddenNodes(prev => new Set(prev).add(appId));
}
@ -238,7 +240,14 @@ const FlowEditorMain: React.FC<FlowEditorMainProps> = (props) => {
return (
<div ref={reactFlowWrapper} style={{ width: '100%', height: '100%', position: 'relative' }}
onContextMenu={(e) => e.preventDefault()}>
onContextMenu={(e) => e.preventDefault()}
// 添加点击事件处理器,用于关闭添加节点菜单
onClick={() => {
if (edgeForNodeAdd || positionForNodeAdd) {
setEdgeForNodeAdd(null);
setPositionForNodeAdd(null);
}
}}>
<ReactFlow
id={reactFlowId}
nodes={nodes.map(node => {
@ -517,6 +526,8 @@ const FlowEditorMain: React.FC<FlowEditorMainProps> = (props) => {
zIndex: 1000,
transform: 'none'
}}
// 点击事件冒泡到父级处理,这里阻止默认行为
onClick={(e) => e.stopPropagation()}
>
<AddNodeMenu
onAddNode={(nodeType, node) => {

Loading…
Cancel
Save