fix: fixed arguments of callbacks in formApi (#5970)

* 修复 `handleValuesChange` 传递的参数不是处理后的表单值的问题

* 修复 `handleReset` 未能传递正确参数的问题
This commit is contained in:
Netfan
2025-04-16 14:11:04 +08:00
parent 332a8be29c
commit a4da6dedf8
3 changed files with 7 additions and 4 deletions

View File

@@ -62,7 +62,7 @@ async function handleReset(e: Event) {
e?.stopPropagation();
const props = unref(rootProps);
const values = toRaw(props.formApi?.getValues());
const values = toRaw(await props.formApi?.getValues());
if (isFunction(props.handleReset)) {
await props.handleReset?.(values);

View File

@@ -72,7 +72,7 @@ onMounted(async () => {
await nextTick();
watch(
() => form.values,
(newVal) => {
async (newVal) => {
if (forward.value.handleValuesChange) {
const fields = state.value.schema?.map((item) => {
return item.fieldName;
@@ -91,7 +91,10 @@ onMounted(async () => {
if (changedFields.length > 0) {
// 调用handleValuesChange回调传入所有表单值的深拷贝和变更的字段列表
forward.value.handleValuesChange(cloneDeep(newVal), changedFields);
forward.value.handleValuesChange(
cloneDeep(await forward.value.formApi.getValues()),
changedFields,
);
}
}
}