Запретить Formik очищать форму - PullRequest
0 голосов
/ 05 августа 2020

У меня есть форма Formik, которая очищается автоматически после проверки всех полей и отправки формы. Цель этой формы состоит в том, чтобы зарегистрировать нового пользователя, так что это довольно длинная форма.

Проблема в том, что иногда использовалось электронное письмо, которое вводит пользователь, или какое-то другое значение возвращается из бэкэнд. Для пользователя очень раздражает, если вас просят заполнить форму с самого начала только потому, что одно значение неверно.

Как я могу предотвратить автоматическую очистку этой формы Formik или хотя бы дождаться ответа из серверной части, а затем очистите или сохраните значения формы в зависимости от того, какая из них была неправильной.

Моя форма структурирована таким образом;

<Formik 
 initialValues,
 onSubmit
 validationSchema,
>
 {()=> return (
  <Form>
   <Field />
    //...quite a long form

Что я могу сделать в этой ситуации ?

Ответы [ 2 ]

0 голосов
/ 05 августа 2020

Неважно, спасибо, ребята, я прострелил себе ногу. Форма на самом деле не очищалась, я принудительно перенаправлял на ту же страницу в зависимости от успеха / неудачи запроса. Это приводило к перезагрузке формы, поэтому все предыдущие значения очищались.

Большое спасибо @ pushparmar

0 голосов
/ 05 августа 2020

Я думаю, вам следует go таким образом, если проверка выполняется на стороне клиента.

Проверяйте введенные вами данные непосредственно перед отправкой формы.

действительно? submitForm (): из-за ошибки в неправильном поле;

Укажите фрагмент кода для лучшего понимания.

...