diff --git a/src/utils/convertFlowData.ts b/src/utils/convertFlowData.ts index deef64c..afe9d93 100644 --- a/src/utils/convertFlowData.ts +++ b/src/utils/convertFlowData.ts @@ -1,3 +1,6 @@ +import { nodeTypeMap, registerNodeType } from '@/components/FlowEditor/node'; +import LocalNode from '@/components/FlowEditor/node/localNode/LocalNode'; + /** * 将提供的数据结构转换为适用于 flow editor 的 nodes 和 edges * @param flowData - 原始数据结构 @@ -78,6 +81,11 @@ export const convertFlowData = (flowData: any) => { }; } + // 将未定义的节点动态追加进nodeTypes + const nodeMap = Array.from(Object.values(nodeTypeMap).map(key => key)); + // 目前默认添加的都是系统组件/本地组件 + if (!nodeMap.includes(nodeType)) registerNodeType(nodeType, LocalNode, nodeConfig.nodeName); + nodes.push(node); }