fix: 修复form表单数据无法响应式更新 (#1752)

This commit is contained in:
shaohuzhang1 2024-12-04 11:00:29 +08:00 committed by GitHub
parent 650840449b
commit d9a46b6ed2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 9 additions and 3 deletions

View File

@ -112,6 +112,9 @@ const validate = () => {
} }
return Promise.resolve('') return Promise.resolve('')
} }
props.nodeModel.graphModel.eventCenter.on('refresh_incoming_node_field', () => {
getIncomingNode(props.nodeModel.id)
})
defineExpose({ validate }) defineExpose({ validate })
onMounted(() => { onMounted(() => {
options.value = getIncomingNode(props.nodeModel.id) options.value = getIncomingNode(props.nodeModel.id)

View File

@ -168,7 +168,7 @@ const openAddFormCollect = () => {
addFormCollectRef.value?.open() addFormCollectRef.value?.open()
} }
const openEditFormCollect = (form_field_data: any, index: number) => { const openEditFormCollect = (form_field_data: any, index: number) => {
editFormCollectRef.value?.open(form_field_data, index) editFormCollectRef.value?.open(cloneDeep(form_field_data), index)
} }
const deleteField = (form_field_data: any) => { const deleteField = (form_field_data: any) => {
form_data.value.form_field_list = form_data.value.form_field_list.filter( form_data.value.form_field_list = form_data.value.form_field_list.filter(
@ -199,8 +199,10 @@ const form_data = computed({
const getDefaultValue = (row: any) => { const getDefaultValue = (row: any) => {
if (row.default_value) { if (row.default_value) {
const default_value = row.option_list?.filter((v: any) => row.default_value.indexOf(v.value) > -1) const default_value = row.option_list
.map((v: any) => v.label).join(',') ?.filter((v: any) => row.default_value.indexOf(v.value) > -1)
.map((v: any) => v.label)
.join(',')
if (default_value) { if (default_value) {
return default_value return default_value
} }
@ -217,6 +219,7 @@ function submitDialog(val: string) {
onMounted(() => { onMounted(() => {
set(props.nodeModel, 'validate', validate) set(props.nodeModel, 'validate', validate)
sync_form_field_list() sync_form_field_list()
props.nodeModel.graphModel.eventCenter.emit('refresh_incoming_node_field')
}) })
</script> </script>
<style lang="scss" scoped></style> <style lang="scss" scoped></style>