Reactjs 为什么Redux表单没有设置提交值?
下面是我的Reactjs 为什么Redux表单没有设置提交值?,reactjs,react-redux,redux-form,react-redux-form,Reactjs,React Redux,Redux Form,React Redux Form,下面是我的RequestAnInviteredux表单。问题是当我提交表单时,提交从未更改为true。你可以看到我在下面有一个日志,它总是输出false 当我提交表单时,我对redux表单做了什么错误导致提交从未设置为true class RequestAnInvite extends React.Component { componentDidMount() { this.props.dispatch(loadTitles()); } handleSubmit(data
RequestAnInvite
redux表单。问题是当我提交表单时,提交
从未更改为true
。你可以看到我在下面有一个日志,它总是输出false
当我提交表单时,我对redux表单做了什么错误导致提交从未设置为true
class RequestAnInvite extends React.Component {
componentDidMount() {
this.props.dispatch(loadTitles());
}
handleSubmit(data) {
console.log(data);this.props.dispatch(requestInvitationsActions.createInvitationRequest(data));
}
render() {
const { handleSubmit, submitting } = this.props;
console.log('submitting: ' + submitting);
return (
<div className="container-fluid h-100">
<form onSubmit={handleSubmit(this.handleSubmit.bind(this))}>
<Field
name="email"
type="text"
component={renderField}
label="Email"
placeholder="xxx@acme.com"
/>
<p>submitting: {submitting}</p>
<div className="form-group form-group-actions">
<button type="submit" className="btn btn-primary" disabled={submitting}>
{submitting ? 'Requesting...' : 'Request an Invite'}
</button>
</div>
</form>
</div>
);
}
}
RequestAnInvite = reduxForm({
form: 'RequestAnInvite',
validate,
})(RequestAnInvite);
const mapStateToProps = state => {
return {
titles: state.titles
};
};
const mapDispatchToProps = (dispatch) => bindActionCreators({
...requestInvitationsActions,
}, dispatch)
export default connect(mapStateToProps, mapDispatchToProps)(RequestAnInvite);
从redux表单文档:
您的表单当前是否正在提交。仅当您传递了返回承诺的onSubmit函数时,此道具才会起作用。在承诺得到解决或拒绝之前,它将是真实的
您的
handleSubmit
只是发送了一个操作,因此无法知道它何时提交谢谢您的回答。我尝试了您的建议,请参见上面的更新1
,提交值仍然没有更改。。。我把你的建议执行错了吗?@AnApprentice如果你返回这个.props.createInvitation…
它应该会成功的!非常感谢。
handleSubmit(data) {
this.props.createInvitationRequest(data)
.then((response) => {
console.log(response)
}, (error) => {
});
}