diff --git a/ui/src/workflow/nodes/tool-base-node/component/output/OutputFieldTable.vue b/ui/src/workflow/nodes/tool-base-node/component/output/OutputFieldTable.vue index 16da75aa779..20700099cc2 100644 --- a/ui/src/workflow/nodes/tool-base-node/component/output/OutputFieldTable.vue +++ b/ui/src/workflow/nodes/tool-base-node/component/output/OutputFieldTable.vue @@ -56,7 +56,7 @@ const inputFieldList = ref([]) const outputFieldConfig = ref({ title: t('chat.userOutput', '输出参数') }) function openAddDialog(data?: any, index?: any) { - if (index) { + if (index !== undefined) { currentIndex.value = index } inputFieldFormDialogRef.value?.open(data) @@ -73,6 +73,14 @@ function deleteField(index: any) { const currentIndex = ref(null) function refreshFieldList(data: any) { if (currentIndex.value !== null) { + if ( + inputFieldList.value + .filter((item, index) => index != currentIndex.value) + .some((field) => field.field == data.field) + ) { + MsgError(t('workflow.tip.paramErrorMessage') + data.field) + return + } inputFieldList.value?.splice(currentIndex.value, 1, data) } else { if (inputFieldList.value.some((field) => field.field == data.field)) {