diff --git a/dev_log/dev/fannluo_202008311739.yaml b/dev_log/dev/fannluo_202008311739.yaml new file mode 100644 index 0000000000..868005b571 --- /dev/null +++ b/dev_log/dev/fannluo_202008311739.yaml @@ -0,0 +1,2 @@ +bugfix: + - "子流程模板变量类型更新后勾选的输入参数取值不正确修复" diff --git a/frontend/desktop/src/pages/template/TemplateEdit/NodeConfig/NodeConfig.vue b/frontend/desktop/src/pages/template/TemplateEdit/NodeConfig/NodeConfig.vue index 8ec61d1212..7ccbec79be 100644 --- a/frontend/desktop/src/pages/template/TemplateEdit/NodeConfig/NodeConfig.vue +++ b/frontend/desktop/src/pages/template/TemplateEdit/NodeConfig/NodeConfig.vue @@ -713,7 +713,7 @@ /** * 子流程版本更新后,输入、输出参数如果有变更,需要处理全局变量的 source_info 更新 * 分为两种情况: - * 1.输入、输出参数被勾选,并且在新流程模板中被删除,需要在更新后修改全局变量 source_info 信息 + * 1.输入、输出参数被勾选,并且对应变量在新流程模板中被删除或者变量 source_tag 有更新,需要在更新后修改全局变量 source_info 信息 * 2.新增和修改输入、输出参数,不做处理 */ subflowUpdateParamsChange () { @@ -725,7 +725,9 @@ if (sourceInfo) { if (source_type === 'component_inputs') { sourceInfo.forEach(nodeFormItem => { - if (!this.inputs.find(item => item.tag_code === nodeFormItem)) { + const newTplVar = this.subflowForms[nodeFormItem] + + if (!newTplVar || newTplVar.source_tag !== varItem.source_tag) { // 变量被删除或者变量类型有变更 this.setVariableSourceInfo({ key, id: nodeId,