diff --git a/src/views/settings/creation/index.vue b/src/views/settings/creation/index.vue index b48070f..f29126e 100644 --- a/src/views/settings/creation/index.vue +++ b/src/views/settings/creation/index.vue @@ -273,7 +273,7 @@ + 添加自定义字段 - +
@@ -1494,10 +1494,21 @@ const handleTemplatePageChange = (page: number) => { // 处理技能选择确认(只更新临时状态,不保存到节点) const handleSkillConfirm = (skill: SkillItem) => { selectedSkill.value = skill; + if (selectedElement.value?.kind === 'node') { + selectedElement.value.properties = { + ...(selectedElement.value.properties || {}), + skillName: skill.name, + }; + } }; // 移除已选择的技能(只更新临时状态) const handleRemoveSkill = () => { selectedSkill.value = null; + if (selectedElement.value?.kind === 'node') { + const nextProperties = { ...(selectedElement.value.properties || {}) }; + delete nextProperties.skillName; + selectedElement.value.properties = nextProperties; + } }; // 处理模型选择确认(只更新临时状态,不保存到节点) const handleModelConfirm = (model: any) => { @@ -1710,7 +1721,20 @@ const useWorkflow = async (workflow: WorkflowItem) => { // 初始化其他配置字段(从 config 中读取) if (node.config) { Object.keys(node.config).forEach((key) => { - if (!['nodeCode', 'width', 'height', 'x', 'y', 'formConfig', 'inputSource', 'fieldMetadata', 'selectedModel', 'modelOutputFields'].includes(key)) { + if ( + ![ + 'nodeCode', + 'width', + 'height', + 'x', + 'y', + 'formConfig', + 'inputSource', + 'fieldMetadata', + 'selectedModel', + 'modelOutputFields', + ].includes(key) + ) { const fieldKey = `${node.id}_${key}`; creationFormValues[fieldKey] = node.config[key]; } @@ -1879,7 +1903,10 @@ const hydrateCreationFileFields = (nodes: any[] = []) => { const urls = Array.isArray(rawValue) ? rawValue : rawValue ? [rawValue] : []; if (urls.length === 0) return; creationFieldFiles[key] = urls.map((url: string, index: number) => ({ - name: String(url || '').split('/').pop() || `file-${index + 1}`, + name: + String(url || '') + .split('/') + .pop() || `file-${index + 1}`, url, })); }); @@ -2310,7 +2337,20 @@ const handleTreeNodeClick = async (data: TreeNode) => { // 初始化其他配置字段(从 config 中读取) if (node.config) { Object.keys(node.config).forEach((key) => { - if (!['nodeCode', 'width', 'height', 'x', 'y', 'formConfig', 'inputSource', 'fieldMetadata', 'selectedModel', 'modelOutputFields'].includes(key)) { + if ( + ![ + 'nodeCode', + 'width', + 'height', + 'x', + 'y', + 'formConfig', + 'inputSource', + 'fieldMetadata', + 'selectedModel', + 'modelOutputFields', + ].includes(key) + ) { const fieldKey = `${node.id}_${key}`; creationFormValues[fieldKey] = node.config[key]; } @@ -2392,7 +2432,20 @@ const handleTreeNodeClick = async (data: TreeNode) => { // 初始化其他配置字段(从 config 中读取) if (node.config) { Object.keys(node.config).forEach((key) => { - if (!['nodeCode', 'width', 'height', 'x', 'y', 'formConfig', 'inputSource', 'fieldMetadata', 'selectedModel', 'modelOutputFields'].includes(key)) { + if ( + ![ + 'nodeCode', + 'width', + 'height', + 'x', + 'y', + 'formConfig', + 'inputSource', + 'fieldMetadata', + 'selectedModel', + 'modelOutputFields', + ].includes(key) + ) { const fieldKey = `${node.id}_${key}`; creationFormValues[fieldKey] = node.config[key]; } @@ -3539,7 +3592,7 @@ const applySelected = () => { if (selectedSkill.value) { p.skillName = selectedSkill.value.name; } else { - delete p.skillName; + p.skillName = null; } // 保存提示词内容