我尝试使用此代码将动态表单名称传递到 reduxForm 中。
这是我找到的代码:
let FormAddress = compose(connect((state, props) => ({form: props.form})), reduxForm({destroyOnUnmount: false, asyncBlurFields: []}))(ValidationForm);
摘自这篇文章: https://github.com/erikras/redux-form/issues/603#issuecomment-254271319
但我不太确定发生了什么。
这就是我目前正在做的事情:
const formName = 'shippingAddress';
const form = reduxForm({
form: formName
});
export default connect(mapStateToProps)(CityStateZip);
但我希望能够使用 Prop 传递它,如下所示:
const formName = 'shippingAddress';
const form = reduxForm({
form: props.form
// validate
});
export default connect(mapStateToProps)(CityStateZip);
但是当我尝试这样做时,它提示它不知道 props 是什么 - 因为我相信它超出了上面函数的范围。
有人可以帮助我吗?
最佳答案
调用 FormAddress
组件的父组件应将 props 中的表单名称发送为 props.form
:
var formId="SomeId"
<FormAddress form={formId} />
// and in your FormAddress component have
const form = reduxForm({
//no need to put form again here as we are sending form props.
});
这对我有用。
关于javascript - 如何以 redux 形式传入动态表单名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40509754/