File tree Expand file tree Collapse file tree 3 files changed +16
-1
lines changed Expand file tree Collapse file tree 3 files changed +16
-1
lines changed Original file line number Diff line number Diff line change @@ -46,6 +46,10 @@ export function creatFormControl<TFieldValues extends FieldValues = FieldValues>
46
46
type TFormState = FormState < TFieldValues >
47
47
type TFormStateKey = keyof TFormState
48
48
49
+ const {
50
+ onSuccessUpdateDefaultValues = false ,
51
+ } = _options
52
+
49
53
const _fields = { } as Fields < TFieldValues , FieldsKey >
50
54
51
55
const _formState = reactive < TFormState > ( {
@@ -296,7 +300,9 @@ export function creatFormControl<TFieldValues extends FieldValues = FieldValues>
296
300
const res : Record < string , any > = { }
297
301
for ( const fieldName in _fields ) {
298
302
res [ fieldName ] = _fields [ fieldName ] . inputValue
299
- _options . defaultValues ! [ fieldName ] = _fields [ fieldName ] . inputValue . value
303
+
304
+ if ( onSuccessUpdateDefaultValues )
305
+ _options . defaultValues ! [ fieldName ] = _fields [ fieldName ] . inputValue . value
300
306
}
301
307
302
308
await onSubmit ( _fields as UnpackNestedValue < TFieldValues > , e )
Original file line number Diff line number Diff line change @@ -19,6 +19,7 @@ export interface UseFormProps<TFieldValues extends object> {
19
19
shouldUnregister : boolean
20
20
criteriaMode : CriteriaMode
21
21
delayError : number
22
+ onSuccessUpdateDefaultValues : boolean
22
23
}
23
24
24
25
export type KeepStateOptions = Partial < {
Original file line number Diff line number Diff line change @@ -12,9 +12,14 @@ const {
12
12
formState,
13
13
isExistInErrors,
14
14
handleSubmit,
15
+ reset,
15
16
} = useForm ({
16
17
mode: ' onSubmit' ,
17
18
resolver: useZodResolver (zodSchema ),
19
+ defaultValues: {
20
+ name: ' Elone' ,
21
+ },
22
+ onSuccessUpdateDefaultValues: true ,
18
23
})
19
24
20
25
const onSubmit = createSubmitHandler ((data : any ) => {
@@ -34,4 +39,7 @@ const onError = createErrorHandler((errors: any) => {
34
39
submit
35
40
</button >
36
41
</form >
42
+ <button @click =" reset()" >
43
+ Reset
44
+ </button >
37
45
</template >
You can’t perform that action at this time.
0 commit comments