#reactjs #forms #formik
#reactjs #формы #formik
Вопрос:
Итак, у меня есть компонент, который использует formik
и имеет дочерний компонент для обновления одного из полей для него.
Дочерний компонент :
this.props.formik.setFieldValue("keywords", target.value, false);
Это отлично работает для получения обновленного значения, но после отправки формы я хочу очистить все поля. Но каким-то образом значение для этого поля сохраняется.
Я пытался
Resetform
setFieldValue("keywords", '', false);
values.keywords = ''
в событии onSubmit
и ни одно из них не работает
Ответ №1:
В реквизите onSubmit, который возвращается из <Formik />
, вы получаете значения и действия, связанные с этими значениями. Вызов Reset actions.resetForm()
внутри этого возврата должен решить вашу проблему.
onSubmit = {
(v: IRegisterFormValues, a: FormikActions<IRegisterFormValues> ) => {
AuthService.register(v.email).then(
res => {
a.resetForm()
}
)
}
}