From 09f795e00ed8d56d6b1e028fc40974d3292eed5f Mon Sep 17 00:00:00 2001 From: No name <88119911+doraemonxxx@users.noreply.github.com> Date: Wed, 27 Mar 2024 09:29:54 +0800 Subject: [PATCH] fix: bug RangePicker with componentProps valueFormat ('YYYY-MM-DD') does not return the formatted value when using form validate() method #3690 (#3691) close #3690 --- src/components/Form/src/hooks/useFormEvents.ts | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/src/components/Form/src/hooks/useFormEvents.ts b/src/components/Form/src/hooks/useFormEvents.ts index 28794d118..2ed05862a 100644 --- a/src/components/Form/src/hooks/useFormEvents.ts +++ b/src/components/Form/src/hooks/useFormEvents.ts @@ -135,6 +135,9 @@ export function useFormEvents({ } const constructValue = tryConstructArray(key, values) || tryConstructObject(key, values); + const setDateFieldValue = (v) => { + return v ? (_props?.valueFormat ? v : dateUtil(v)) : null; + }; // 0| '' is allow if (hasKey || !!constructValue) { @@ -144,15 +147,11 @@ export function useFormEvents({ if (Array.isArray(fieldValue)) { const arr: any[] = []; for (const ele of fieldValue) { - arr.push(ele ? dateUtil(ele) : null); + arr.push(setDateFieldValue(ele)); } unref(formModel)[key] = arr; } else { - unref(formModel)[key] = fieldValue - ? _props?.valueFormat - ? fieldValue - : dateUtil(fieldValue) - : null; + unref(formModel)[key] = setDateFieldValue(fieldValue); } } else { unref(formModel)[key] = fieldValue;