反应挂钩形式验证是在Onchange事件之后完成的
在有效时,试图根据其他表单字段的输入填写某些表单字段。 相当新的反应挂钩形式,所以也许我在看这些错误。 我面临的问题是,Onchange比验证更早地触发。
const {
handleSubmit,
formState: { errors},
} = useForm<FormValues>({
mode: 'onChange'
});
const getAddress = (e) => {
if (errors.postalCode !== undefined) {
return;
}
//do stuff
};
<input
type={'text'}
{...register('postalCode', {
onChange: (e) => {
getAddress(e);
},
})}
/>
“反应钩形式”:“^7.33.1”
因此,当触发onchange时,错误是空的,因此它继续使用无效的数据。
如何在Onchange事件之前确保验证已完成。
Trying to fill in some form fields based on a input of another form field when this is valid.
Fairly new to react hook forms, so perhaps I'm looking at this all wrong.
Issue I'm facing is that the onchange is triggered sooner than the validation.
const {
handleSubmit,
formState: { errors},
} = useForm<FormValues>({
mode: 'onChange'
});
const getAddress = (e) => {
if (errors.postalCode !== undefined) {
return;
}
//do stuff
};
<input
type={'text'}
{...register('postalCode', {
onChange: (e) => {
getAddress(e);
},
})}
/>
"react-hook-form": "^7.33.1"
So when the onChange is triggered, the errors is empty, so it continues with invalid data.
How can I make sure the validation is done before the onChange event.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
尝试添加
等待trigger();
在检查errors.postalcode
之前。链接到文档: https://react-hook-form.com/docs/docs/docs/docs/useform/触发
这会触发验证。
Try adding
await trigger();
before checkingerrors.postalCode
.Link to documentation: https://react-hook-form.com/docs/useform/trigger
This triggers validation.