Поле Formik не очищается после отправки формы - PullRequest
0 голосов
/ 03 марта 2019

Итак, у меня есть компонент, который использует formik и имеет дочерний компонент для обновления одного из полей для него.

Дочерний компонент:

 this.props.formik.setFieldValue("keywords", target.value, false);

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

Я пытался

  • Resetform
  • setFieldValue("keywords", '', false);
  • values.keywords = '' в onSubmitсобытие

и ни один не работает

1 Ответ

0 голосов
/ 12 апреля 2019

В операторе onSubmit, возвращаемом из <Formik />, вы получаете значения и действия, связанные с этими значениями.Вызов Reset actions.resetForm() внутри этого возврата должен решить вашу проблему.

onSubmit = {
    (v: IRegisterFormValues, a: FormikActions<IRegisterFormValues> ) => {
        AuthService.register(v.email).then(
            res => {
                a.resetForm()
            }
        )
    }
}
...