问题描述
1.利用getFieldDecorator
可以同步<Form.Item />
的value,如果我希望<Form.Item />
的label
也为动态的<Input />
,请问除了通过动态控制state的值还有什么办法可以解决吗?
2.用form.getFieldsValue()
获取表单值的时候,如果label
的值是以.
开头的会自动切成对象,请问是什么原因?
相关代码
// data
[
{
"id": 18,
"percent": 20,
"item": "React",
},
{
"id": 19,
"percent": 40,
"item": ".NET",
},
{
"id": 20,
"percent": 40,
"item": "Angular",
}
]
// return
const skillsTab = initialValue => (
<Input
defaultValue={[initialValue]}
className={styles.cascaderWrapper}
/>
);
{skills.map(skill => (
<Form.Item key={skill.id} label={skillsTab(skill.item)} {...formItemLayout}>
{getFieldDecorator(skill.item, { initialValue: skill.percent })(
<Slider />
)}
</Form.Item>
))}