From ad9fa9d853a8cabb26cdde04c20c07d4f2673aa4 Mon Sep 17 00:00:00 2001 From: Abdelrahman Awad Date: Tue, 22 Feb 2022 15:28:45 +0200 Subject: [PATCH] fix: mark fields validated via form validate as validated --- packages/vee-validate/src/useForm.ts | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/packages/vee-validate/src/useForm.ts b/packages/vee-validate/src/useForm.ts index d1eec09d4..8967ec1f2 100644 --- a/packages/vee-validate/src/useForm.ts +++ b/packages/vee-validate/src/useForm.ts @@ -198,6 +198,17 @@ export function useForm = Record unknown) { + Object.values(fieldsByPath.value).forEach(field => { + if (!field) { + return; + } + + // avoid resetting the field values, because they should've been reset already. + applyFieldMutation(field, mutation); + }); + } + /** * Manually sets an error message on a specific field */ @@ -307,14 +318,8 @@ export function useForm = Record { - if (!field) { - return; - } - - // avoid resetting the field values, because they should've been reset already. - applyFieldMutation(field, f => f.resetField()); - }); + // avoid resetting the field values, because they should've been reset already. + mutateAllFields(f => f.resetField()); if (state?.touched) { setTouched(state.touched); @@ -435,6 +440,7 @@ export function useForm = Record): Promise> { + mutateAllFields(f => (f.meta.validated = true)); if (formCtx.validateSchema) { return formCtx.validateSchema(opts?.mode || 'force'); }