我有一个restful api,它接受点分(路径)字符串作为参数键。
例如,我可以这样称呼:
/widgets?material.type=iron
所以我有一个像这样的 redux-form 字段:
<Field name="material.type" component={TextField} label="material type" />
但是 redux-form 会解释 material.type
中的点,并且当传递给我的处理程序时最终会变为 {material: {type: 'iron'}}
。
我明白为什么这是默认行为,但我想知道是否有一种简单的方法可以通过属性或类似的东西来阻止它 {'material.type': 'iron'}
改为?
最佳答案
这是不可能的。当名称包含点时,Redux Form 将始终将字段值嵌套在对象下 - 内部 _.toPath
使用,并且它没有转义字符的方法。
您可以做的是在分配initialValues
时重命名该值:
initialValues: {
...formData,
materialType: formData['material.type']
}
...提交表单时:
onSubmit (values) {
return submitSomehow({
...values,
'material.type': values.materialType
})
}
关于redux-form - 有没有办法让 redux-form 忽略字段名称中的点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47536618/