要将外部组件(React标记)与Redux表单连接,以便值作为有效负载中的值数组传递,你需要遵循以下步骤:
handleSubmit
回调中,你可以访问表单的值,并将其作为有效负载发送到服务器。原因: 可能是由于表单字段名称不匹配或Redux Form配置不正确。
解决方法:
Field
组件的name
属性与你在reduxForm
装饰器中定义的表单名称一致。formReducer
已包含在根reducer中。原因: 默认情况下,HTML表单提交会导致页面刷新。
解决方法:
onSubmit
事件处理器中调用event.preventDefault()
来阻止默认行为。const MyForm = (props) => {
const { handleSubmit } = props;
return (
<form onSubmit={handleSubmit((values) => {
event.preventDefault();
console.log(values);
})}>
<Field name="myField" component="input" type="text" />
<button type="submit">Submit</button>
</form>
);
};
通过以上步骤,你可以将外部React组件与Redux表单连接起来,并确保表单值作为有效负载正确传递。
领取专属 10元无门槛券
手把手带您无忧上云