ReduxForm:从 mapStatetoProps 传递初始值
ReduxForm: passing initialValues from mapStatetoProps
我正在尝试按如下方式获取表单设置的初始值,但它不起作用:
const mapStateToProps = (state, props) => ({
initialValues: state.charts[props.resourceId],
});
const mapDispatchToProps = ...
export default reduxForm({
form: 'ChartForm',
})(connect(mapStateToProps, mapDispatchToProps)(ChartForm));
当然,如果我这样做的话就可以了:
export default reduxForm({
form: 'ChartForm',
initialValues: {
title: "Some Title",
...
}
})(connect(mapStateToProps, mapDispatchToProps)(ChartForm));
但这不是我需要的。我需要从我商店中具有 id == this.props.resourceId
的资源中获取初始值
有人能指出第一个解决方案有什么问题吗?
您需要将 initialValues
道具传递到表单中。为此,请使用 connect 函数包装表单。请参阅文档中的 Initialize From State。
export default connect(mapStateToProps, mapDispatchToProps)(reduxForm({
form: 'ChartForm',
})(ChartForm));
我正在尝试按如下方式获取表单设置的初始值,但它不起作用:
const mapStateToProps = (state, props) => ({
initialValues: state.charts[props.resourceId],
});
const mapDispatchToProps = ...
export default reduxForm({
form: 'ChartForm',
})(connect(mapStateToProps, mapDispatchToProps)(ChartForm));
当然,如果我这样做的话就可以了:
export default reduxForm({
form: 'ChartForm',
initialValues: {
title: "Some Title",
...
}
})(connect(mapStateToProps, mapDispatchToProps)(ChartForm));
但这不是我需要的。我需要从我商店中具有 id == this.props.resourceId
有人能指出第一个解决方案有什么问题吗?
您需要将 initialValues
道具传递到表单中。为此,请使用 connect 函数包装表单。请参阅文档中的 Initialize From State。
export default connect(mapStateToProps, mapDispatchToProps)(reduxForm({
form: 'ChartForm',
})(ChartForm));