diff --git a/ui/src/components/dynamics-form/constructor/items/KnowledgeConstructor.vue b/ui/src/components/dynamics-form/constructor/items/KnowledgeConstructor.vue index 8e1186dc834..62e7cbdfcb5 100644 --- a/ui/src/components/dynamics-form/constructor/items/KnowledgeConstructor.vue +++ b/ui/src/components/dynamics-form/constructor/items/KnowledgeConstructor.vue @@ -150,9 +150,9 @@ function addKnowledge(data: any[]) { formValue.value.knowledge_list = data if (formValue.value.default_value) { const currentIds = data.map((k: any) => k.id) - formValue.value.default_value = formValue.value.default_value.filter((id: string) => - currentIds.includes(id), - ) + formValue.value.default_value = Array.isArray(formValue.value?.default_value) + ? formValue.value?.default_value.filter((id: string) => currentIds.includes(id)) + : [] } } diff --git a/ui/src/components/dynamics-form/items/knowledge/Knowledge.vue b/ui/src/components/dynamics-form/items/knowledge/Knowledge.vue index 4903ddd48d4..bf6287ce62b 100644 --- a/ui/src/components/dynamics-form/items/knowledge/Knowledge.vue +++ b/ui/src/components/dynamics-form/items/knowledge/Knowledge.vue @@ -48,9 +48,18 @@ defineOptions({ inheritAttrs: false }) const emit = defineEmits(['update:modelValue', 'change']) const model_value = computed({ - get: () => - props.modelValue.filter((id: string) => availableList.value.some((item) => item.id === id)) || - [], + get: () => { + if (Array.isArray(props.modelValue)) { + return ( + props.modelValue.filter((id: string) => + availableList.value.some((item) => item.id === id), + ) || [] + ) + } else { + emit('update:modelValue', []) + } + return [] + }, set: (value: string[]) => { emit('update:modelValue', value) emit('change', props.formField)