From 43aa7430324a7f390c31ea9e8a2f1e00fad8a1d0 Mon Sep 17 00:00:00 2001 From: xachary <179740385@qq.com> Date: 星期三, 24 一月 2024 17:10:36 +0800 Subject: [PATCH] fix(BasicForm->FormItem): model should update before event call (#3573). resolve #3570 --- src/components/Form/src/components/FormItem.vue | 16 +++++++++------- 1 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/components/Form/src/components/FormItem.vue b/src/components/Form/src/components/FormItem.vue index 004fc29..efff3fa 100644 --- a/src/components/Form/src/components/FormItem.vue +++ b/src/components/Form/src/components/FormItem.vue @@ -280,12 +280,14 @@ const on = { [eventKey]: (...args: Nullable<Recordable<any>>[]) => { const [e] = args; - if (propsData[eventKey]) { - propsData[eventKey](...args); - } + const target = e ? e.target : null; const value = target ? (isCheck ? target.checked : target.value) : e; props.setFormModel(field, value, props.schema); + + if (propsData[eventKey]) { + propsData[eventKey](...args); + } }, }; const Comp = componentMap.get(component) as ReturnType<typeof defineComponent>; @@ -385,8 +387,8 @@ return slot ? getSlot(slots, slot, unref(getValues), opts) : render - ? render(unref(getValues), opts) - : renderComponent(); + ? render(unref(getValues), opts) + : renderComponent(); }; const showSuffix = !!suffix; @@ -437,8 +439,8 @@ return colSlot ? getSlot(slots, colSlot, values, opts) : renderColContent - ? renderColContent(values, opts) - : renderItem(); + ? renderColContent(values, opts) + : renderItem(); }; return ( -- Gitblit v1.8.0