fix(flowEditor): 修复节点连接边过滤逻辑

- 修正目标句柄匹配条件,同时检查目标节点ID和目标句柄ID
- 修正源句柄匹配条件,同时检查源节点ID和源句柄ID
- 移除调试日志输出语句
- 添加空输入字段占位元素以改善界面显示效果
master
钟良源 2 months ago
parent e253ea592d
commit e2704bee3c

@ -124,10 +124,12 @@ const renderSpecialNodeHandles = (isStartNode: boolean, isEndNode: boolean, data
const getConnectedEdgesForHandle = (edges: any[], nodeId: string, handleId: string, handleType: 'source' | 'target') => {
return edges.filter(edge => {
if (handleType === 'target') {
return edge.targetHandle === handleId;
// 检查目标节点ID和目标句柄ID都匹配
return edge.target === nodeId && edge.targetHandle === handleId;
}
else {
return edge.sourceHandle === handleId;
// 检查源节点ID和源句柄ID都匹配
return edge.source === nodeId && edge.sourceHandle === handleId;
}
});
};
@ -287,7 +289,6 @@ const NodeContent = ({ data }: { data: NodeContentData }) => {
connectedIns.push(...relatedDataIn);
const relatedDataOut = getDataFieldsForApi(apiIn, dataOuts, 'out');
// console.log("relatedDataOut:",relatedDataOut);
connectedOuts.push(...relatedDataOut);
}
});
@ -344,6 +345,15 @@ const NodeContent = ({ data }: { data: NodeContentData }) => {
</div>
)}
{connectedDataFields.connectedIns.length === 0 && (
<div className={styles['node-inputs']}>
<div key={`input-${Date.now()}`} className={styles['node-input-label']}>
<span className={styles['node-data-type']}>
</span>
</div>
</div>
)}
{/* Data 输出 */}
{connectedDataFields.connectedOuts.length > 0 && !isEndNode && (
<div className={styles['node-outputs']}>

Loading…
Cancel
Save