如何为<fieldarray>使用的数组设置初始值/默认值?

时间:2019-05-30 22:06:47

标签: reactjs react-final-form react-final-form-arrays

我一直在创建带有反应最终形式的形式。此表单具有一些条件字段,仅在用户单击复选框时显示。如果选中此复选框,则呈现一个组件。

这与他们在文档中提供的示例非常相似,您可以在此处查看。 https://codesandbox.io/s/kx8qv67nk5

我以该示例为基础,并且可以像示例中一样,使用一个调用push方法的按钮将其添加到字段数组中。

我想做的就是不必按下按钮即可将该对象推入数组,而是让数组默认值已在其中包含一个对象。

换句话说

在提供的示例中,数组开始为空,然后将()定义在

中的字段推入数组

我如何默认将其默认为已经拥有一个对象,而不是手动推动它?

我不确定在哪里定义或初始化该数组。

2 个答案:

答案 0 :(得分:1)

您可以使用“ initialValues”

示例:

import { Form } from "react-final-form";
...
myInitData = {
    firstName: "hello",
    lastName: "world"
}
...
render() {
    return 
        <Form
            initialValues={myInitData} 
            onSubmit={this.handleSubmit}
            validate={this.validate}
          >...

答案 1 :(得分:1)

Loick M很近,但是对于数组,您需要:

<Form
  onSubmit={myOnSubmit}
  initialValues={{ musicians: [ { firstName: 'Bob', lastName: 'Marley' } ] }}>
  ...
</Form> 
相关问题