我正在加载Redux表单,其中initialValues作为props传递。但是,我需要重新格式化数据以适合我的表单名称..所以,例如,如果initialValues中的数据作为道具传递{name:'John',age:'32'},我想将其转换为{user :{name:'John',年龄:'32'}}。你是如何实现的?你是否写了一个reducer来实现这个目标,如果是,那你如何在组件加载时调用它呢?
感谢。
答案 0 :(得分:0)
你可以在传递道具时这样做。
const userData = { name: 'John', age: 32 }
...
<MyForm initialValues={{ user: userData }}/>
答案 1 :(得分:0)
如果您需要更大的更改,还可以将函数传递给initialValues:
const getInitialValues = (propValues) => {
const initialValues = {};
// your function to format the values here
return initialValues;
};
@reduxForm(
{
form: 'myForm',
fields: formFields,
},
state => ({
initialValues: getInitialValues(state.userData),
form: state.form
})
)