【发布时间】:2018-07-10 01:01:58
【问题描述】:
我有一个已在此处讨论过的问题: https://github.com/erikras/redux-form/issues/3424
我基本上有两个要求:
- 我需要能够在 reduxForm 的 onSubmit 函数中通过 mapStateToProps 访问映射到我的组件中的一些道具。
- 我也想从我的表单状态访问syncErrors 值,在MyFormComponent 中。这是为了例如总结错误。
我尝试按如下方式完成此操作:
const mapDispatchToProps = (state, ownProps) => ({
data: state.dataFromServer // some data from the server
syncErrors: getFormSyncErrors('myForm')(state),
});
const myFormSubmit = (values, dispatch, props) => {
// need to access the data prop from above
}
const FormContainer =
connect(
mapStateToProps,
mapDispatchToProps,
)((reduxForm({
form: 'myForm',
onSubmit: myFormSubmit,
})(MyFormComponent)));
问题如下:
如果我按上述方式订购(connect wraps reduxForm),我可以从 myFormSubmit 中的 store 访问我的 prop,但 syncErrors 不会传递给 MyFormComponent,因此我无法访问它们。
如果我切换顺序(reduxForm wraps connect),我可以访问 MyFormComponent 中的 syncErrors,但无法访问 myFormSubmit 函数内的 store 中的 prop(因为它还没有被映射,自然)。
对如何处理有什么建议吗?
我真的不想在 MyFormComponent 中这样做:Redux-form handleSubmit: How to access store state?
【问题讨论】:
标签: redux-form