一、查看antd文档发现表单项的值不能通过设置状态来更新,我们应该使用form.setFieldValue来更新
antd v4动态表单setFieldsValue如何设置嵌套路径的值?
https://segmentfault.com/q/1010000023608785?utm_source=tag-newest
formItem是动态渲染出来的,所以此处的listIndex 是一个变量,
数据结构为:
data:{
list:[
{name:'111'},
....
{name:'nnn'},
]
}
表单代码:
<FormItem
name={['data','list', listIndex, 'name',]}
initialValue={this.state.name}
>
<Select>此处省略</Select>
</FormItem>
修改表单的值:name。 无法生效,代码如下
let obj = {}
const id = ['data', 'list', listIndex, 'name',]
obj[id] = '123'
setFieldsValue(obj)
求教 setFieldsValue如何设置嵌套路径数组的值?
setFieldsValue 设置嵌套数组路径的值
form.setFieldsValue({'data': {'list':{[listIndex]:{'name':'123'}}}});