У меня есть следующий сценарий:
- основной компонент с несколькими полями, которые обрабатывает Formik. Здесь все хорошо.
- подкомпонент, который визуализируется внутри главной формы и использует компонент Field Formik, так же, как поля в основном компоненте. Эти поля не обновляются.
Основной компонент:
...
return (
<Formik
enableReinitialize
initialValues={{
name: this.state.name,
newName: this.state.newName, // this field is inside the nested component
}}
validationSchema={mySchema}
onSubmit={...}
>
{
({ errors, values, ... }) => (
<Form ref={this.formRef}>
...
<Field name="name" type="text" />
...
<NewNameForm />
</Form>
)
}
</Formik>
);
Компонент NewNameForm:
...
return (
<div>
<Field name="newName" type="text" />
</div>
);
Мой подход неверный, могу ли я просто вложить компоненты с такими дополнительными полями? newName
не обновляется, поэтому я, очевидно, что-то делаю не так.