refactor: change setValues to setFieldValue for better validation (#547)
This commit is contained in:
parent
b20a45552a
commit
7fdf916443
|
|
@ -414,9 +414,7 @@ const form = useForm({
|
||||||
validationSchema: toTypedSchema(schema),
|
validationSchema: toTypedSchema(schema),
|
||||||
})
|
})
|
||||||
|
|
||||||
form.setValues({
|
form.setFieldValue('username', 'bar')
|
||||||
username: 'foo'
|
|
||||||
})
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ async function onSubmit(values: any) {
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
<Separator />
|
<Separator />
|
||||||
<Form v-slot="{ setValues }" :validation-schema="accountFormSchema" class="space-y-8" @submit="onSubmit">
|
<Form v-slot="{ setFieldValue }" :validation-schema="accountFormSchema" class="space-y-8" @submit="onSubmit">
|
||||||
<FormField v-slot="{ componentField }" name="name">
|
<FormField v-slot="{ componentField }" name="name">
|
||||||
<FormItem>
|
<FormItem>
|
||||||
<FormLabel>Name</FormLabel>
|
<FormLabel>Name</FormLabel>
|
||||||
|
|
@ -126,15 +126,11 @@ async function onSubmit(values: any) {
|
||||||
@update:model-value="(v) => {
|
@update:model-value="(v) => {
|
||||||
if (v) {
|
if (v) {
|
||||||
dateValue = v
|
dateValue = v
|
||||||
setValues({
|
setFieldValue('dob', toDate(v).toISOString())
|
||||||
dob: toDate(v).toISOString(),
|
|
||||||
}, false)
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
dateValue = undefined
|
dateValue = undefined
|
||||||
setValues({
|
setFieldValue('dob', undefined)
|
||||||
dob: undefined,
|
|
||||||
}, false)
|
|
||||||
}
|
}
|
||||||
}"
|
}"
|
||||||
/>
|
/>
|
||||||
|
|
@ -178,9 +174,7 @@ async function onSubmit(values: any) {
|
||||||
<CommandItem
|
<CommandItem
|
||||||
v-for="language in languages" :key="language.value" :value="language.label"
|
v-for="language in languages" :key="language.value" :value="language.label"
|
||||||
@select="() => {
|
@select="() => {
|
||||||
setValues({
|
setFieldValue('language', language.value)
|
||||||
language: language.value,
|
|
||||||
}, false)
|
|
||||||
open = false
|
open = false
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@ const formSchema = toTypedSchema(z.object({
|
||||||
|
|
||||||
const placeholder = ref()
|
const placeholder = ref()
|
||||||
|
|
||||||
const { handleSubmit, setValues, values } = useForm({
|
const { handleSubmit, setFieldValue, values } = useForm({
|
||||||
validationSchema: formSchema,
|
validationSchema: formSchema,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
@ -79,14 +79,10 @@ const onSubmit = handleSubmit((values) => {
|
||||||
:max-value="today(getLocalTimeZone())"
|
:max-value="today(getLocalTimeZone())"
|
||||||
@update:model-value="(v) => {
|
@update:model-value="(v) => {
|
||||||
if (v) {
|
if (v) {
|
||||||
setValues({
|
setFieldValue('dob', v.toString())
|
||||||
dob: v.toString(),
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
setValues({
|
setFieldValue('dob', undefined)
|
||||||
dob: '',
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}"
|
}"
|
||||||
/>
|
/>
|
||||||
|
|
|
||||||
|
|
@ -48,7 +48,7 @@ const formSchema = toTypedSchema(z.object({
|
||||||
}),
|
}),
|
||||||
}))
|
}))
|
||||||
|
|
||||||
const { handleSubmit, setValues, values } = useForm({
|
const { handleSubmit, setFieldValue, values } = useForm({
|
||||||
validationSchema: formSchema,
|
validationSchema: formSchema,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
@ -91,9 +91,7 @@ const onSubmit = handleSubmit((values) => {
|
||||||
:key="language.value"
|
:key="language.value"
|
||||||
:value="language.label"
|
:value="language.label"
|
||||||
@select="() => {
|
@select="() => {
|
||||||
setValues({
|
setFieldValue('language', language.value)
|
||||||
language: language.value,
|
|
||||||
})
|
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<Check
|
<Check
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@ const formSchema = toTypedSchema(z.object({
|
||||||
|
|
||||||
const placeholder = ref()
|
const placeholder = ref()
|
||||||
|
|
||||||
const { handleSubmit, setValues, values } = useForm({
|
const { handleSubmit, setFieldValue, values } = useForm({
|
||||||
validationSchema: formSchema,
|
validationSchema: formSchema,
|
||||||
initialValues: {
|
initialValues: {
|
||||||
|
|
||||||
|
|
@ -82,14 +82,10 @@ const onSubmit = handleSubmit((values) => {
|
||||||
:max-value="today(getLocalTimeZone())"
|
:max-value="today(getLocalTimeZone())"
|
||||||
@update:model-value="(v) => {
|
@update:model-value="(v) => {
|
||||||
if (v) {
|
if (v) {
|
||||||
setValues({
|
setFieldValue('dob', v.toString())
|
||||||
dob: v.toString(),
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
setValues({
|
setFieldValue('dob', undefined)
|
||||||
dob: '',
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}"
|
}"
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@ const formSchema = toTypedSchema(z.object({
|
||||||
|
|
||||||
const placeholder = ref()
|
const placeholder = ref()
|
||||||
|
|
||||||
const { handleSubmit, setValues, values } = useForm({
|
const { handleSubmit, setFieldValue, values } = useForm({
|
||||||
validationSchema: formSchema,
|
validationSchema: formSchema,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
@ -79,14 +79,10 @@ const onSubmit = handleSubmit((values) => {
|
||||||
:max-value="today(getLocalTimeZone())"
|
:max-value="today(getLocalTimeZone())"
|
||||||
@update:model-value="(v) => {
|
@update:model-value="(v) => {
|
||||||
if (v) {
|
if (v) {
|
||||||
setValues({
|
setFieldValue('dob', v.toString())
|
||||||
dob: v.toString(),
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
setValues({
|
setFieldValue('dob', undefined)
|
||||||
dob: '',
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
}"
|
}"
|
||||||
/>
|
/>
|
||||||
|
|
|
||||||
|
|
@ -48,7 +48,7 @@ const formSchema = toTypedSchema(z.object({
|
||||||
}),
|
}),
|
||||||
}))
|
}))
|
||||||
|
|
||||||
const { handleSubmit, setValues, values } = useForm({
|
const { handleSubmit, setFieldValue, values } = useForm({
|
||||||
validationSchema: formSchema,
|
validationSchema: formSchema,
|
||||||
initialValues: {
|
initialValues: {
|
||||||
language: '',
|
language: '',
|
||||||
|
|
@ -94,9 +94,7 @@ const onSubmit = handleSubmit((values) => {
|
||||||
:key="language.value"
|
:key="language.value"
|
||||||
:value="language.label"
|
:value="language.label"
|
||||||
@select="() => {
|
@select="() => {
|
||||||
setValues({
|
setFieldValue('language', language.value)
|
||||||
language: language.value,
|
|
||||||
})
|
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
{{ language.label }}
|
{{ language.label }}
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@ const formSchema = toTypedSchema(z.object({
|
||||||
|
|
||||||
const placeholder = ref()
|
const placeholder = ref()
|
||||||
|
|
||||||
const { handleSubmit, setValues, values } = useForm({
|
const { handleSubmit, setFieldValue, values } = useForm({
|
||||||
validationSchema: formSchema,
|
validationSchema: formSchema,
|
||||||
initialValues: {
|
initialValues: {
|
||||||
|
|
||||||
|
|
@ -82,16 +82,11 @@ const onSubmit = handleSubmit((values) => {
|
||||||
:max-value="today(getLocalTimeZone())"
|
:max-value="today(getLocalTimeZone())"
|
||||||
@update:model-value="(v) => {
|
@update:model-value="(v) => {
|
||||||
if (v) {
|
if (v) {
|
||||||
setValues({
|
setFieldValue('dob', v.toString())
|
||||||
dob: v.toString(),
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
setValues({
|
setFieldValue('dob', undefined)
|
||||||
dob: '',
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}"
|
}"
|
||||||
/>
|
/>
|
||||||
</PopoverContent>
|
</PopoverContent>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user