由于各种不属于我的原因,在我的工作应用程序中,我们使用
redux
而没有连接 HOC
。这里有优点也有缺点。但是是否可以以这种方式使用 redux-form
,目前我有 redux-form1 using it's own store via
connect()`,这意味着它不太理想,有时会在两个存储之间传递状态,丢失了单一的事实来源。
有没有我可以在不使用连接
redux-form
的情况下使用HOC
?
您不需要react-redux
connect
HOC 来使用redux 形式。 Redux 表单提供了自己的类似连接的 HOC,称为 reduxForm
。使用上面链接中描述的配置来包装您的表单组件,然后您就可以开始了。
Redux 表单使用
reduxForm
代替 connect,这是一个示例。
NewCampaignForm.propTypes = {
fields: PropTypes.object.isRequired,
handleSubmit: PropTypes.func.isRequired,
resetForm: PropTypes.func.isRequired,
submitting: PropTypes.bool.isRequired
}
export default reduxForm({
form: 'new-campaign-form',
fields
})(NewCampaignForm);
如果您确实愿意,您可以在该表单的父容器上使用
connect
,这样就可以了。
您可以使用reduxForm HOC。如果您正在使用
语义-ui-react,
然后你可以使用
<Form.Field>
来包装字段