我已经检查了具有初始化值的 reduxForm 示例代码,他们的代码和我的代码之间的唯一区别是以下代码块..
我的代码 (不适用于初始值)
function mapStateToProps(state) {
return{
initialValues: state.account.data
};
}
export default reduxForm({
form:'initializeFromState'
})(connect(mapStateToProps,{load: loadAccount})(InitializeFromStateForm));
他们的代码 (使用初始值) Taken from here
InitializeFromStateForm = reduxForm({
form: 'initializeFromState', // a unique identifier for this form
})(InitializeFromStateForm);
// You have to connect() to any reducers that you wish to connect to yourself
InitializeFromStateForm = connect(
state => ({
initialValues: state.account.data, // pull initial values from account reducer
}),
{ load: loadAccount }, // bind account loading action creator
)(InitializeFromStateForm);
export default InitializeFromStateForm;
我用我的代码更改了 connect() 和 reduxForm 的代码,有趣的是,initialValues 停止工作,现在我的问题是代码是否不同?如果不同我的代码出了什么问题?
谢谢。
最佳答案
是的,有一点区别,您先用 connect
包装组件,然后用 ReduxForm
包装组件,但是应该反过来
将代码更改为
export default connect(mapStateToProps,{load: loadAccount})(reduxForm({
form:'initializeFromState'
})(InitializeFromStateForm));
它应该可以工作
关于javascript - React - 使用 reduxForm 的两个语句之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44662259/