Как установить начальное значение / значение по умолчанию для массива, используемого <FieldArray />?
Я создавал форму с реактивно-окончательной формой. Эта форма имеет несколько условных полей, которые отображаются только тогда, когда пользователь нажимает флажок. Если флажок установлен, компонент отображается.
Это очень похоже на пример, который они приводят в документации, которую вы можете увидеть здесь. https://codesandbox.io/s/kx8qv67nk5
Я основываюсь на этом примере и могу добавить в массив полей кнопку, которая вызывает метод push, точно так же, как в примере.
То, что я хотел бы сделать, это не нажимать кнопку для того, чтобы поместить этот объект в массив, а использовать массив по умолчанию, который уже включает в себя один объект.
другими словами,
В приведенном примере массив начинается пустым, и вы нажимаете () в массив, поля, которые определены в
Как можно по умолчанию использовать один объект по умолчанию вместо его ручного нажатия?
Я не уверен, где этот массив определяется или инициализируется.
2 ответа
Loick M близок, но для массива вам понадобится:
<Form
onSubmit={myOnSubmit}
initialValues={{ musicians: [ { firstName: 'Bob', lastName: 'Marley' } ] }}>
...
</Form>
Вы можете использовать "initialValues"
Пример:
import { Form } from "react-final-form";
...
myInitData = {
firstName: "hello",
lastName: "world"
}
...
render() {
return
<Form
initialValues={myInitData}
onSubmit={this.handleSubmit}
validate={this.validate}
>...