防止 Formik 清除表单
Prevent Formik from clearing form
我有一个 Formik 表单,在验证所有字段并提交表单后,该表单会自动清除。这个表格的目的基本上是注册一个新用户,所以这是一个相当冗长的表格。
问题是有时用户输入的电子邮件已被使用,或者某些其他值从后端退回。对于用户来说,如果仅仅因为一个值不正确而要求您从头开始填写表格,那将是一件很烦人的事情。
如何防止 Formik 自动清除此表单,或者至少等待后端的响应,然后根据哪个错误清除或保留表单的值。
我的表单是这样构造的;
<Formik
initialValues,
onSubmit
validationSchema,
>
{()=> return (
<Form>
<Field />
//...quite a long form
遇到这种情况我该怎么办?
如果验证是在 client-side 上计算的,我认为你应该这样做。
在提交表单之前验证您的输入。
有效吗? submitForm() :通过错误字段的错误;
提及您的代码片段以便更好地理解。
没关系,谢谢你们,我开枪打自己的腿了。表单实际上并没有清除,我是根据请求的 success/failure 强制重定向到同一页面。这导致重新加载表单,因此所有以前的值都被清除。
非常感谢@pushparmar
我有一个 Formik 表单,在验证所有字段并提交表单后,该表单会自动清除。这个表格的目的基本上是注册一个新用户,所以这是一个相当冗长的表格。
问题是有时用户输入的电子邮件已被使用,或者某些其他值从后端退回。对于用户来说,如果仅仅因为一个值不正确而要求您从头开始填写表格,那将是一件很烦人的事情。
如何防止 Formik 自动清除此表单,或者至少等待后端的响应,然后根据哪个错误清除或保留表单的值。
我的表单是这样构造的;
<Formik
initialValues,
onSubmit
validationSchema,
>
{()=> return (
<Form>
<Field />
//...quite a long form
遇到这种情况我该怎么办?
如果验证是在 client-side 上计算的,我认为你应该这样做。
在提交表单之前验证您的输入。
有效吗? submitForm() :通过错误字段的错误;
提及您的代码片段以便更好地理解。
没关系,谢谢你们,我开枪打自己的腿了。表单实际上并没有清除,我是根据请求的 success/failure 强制重定向到同一页面。这导致重新加载表单,因此所有以前的值都被清除。
非常感谢@pushparmar