如何让提交功能在此组件中工作?道具是未定义的,所以我应该建立一个州吗?我觉得我误解了一些非常基本的东西,Firebase似乎比没有它更难。
行动是
export function savePost(post) {
return dispatch => database.push(post)
}
class AddPost extends Component {
onSubmit(values) {
this.props.savePost(values)
.then(this.props.dispatch());
}
render() {
return (
<div className="container">
<form >
<input type="text" name="title"/>
<input type="text" name="body"/>
<button type="submit">Post</button>
</form>
</div>
);
}
}
const mapDispatchToProps = dispatch => ({
//
});
export default connect(mapDispatchToProps, {savePost})(AddPost)
connect方法应该接受mapSateToProps
然后接受mapDispatchToProps
。
所以如果你想派遣savePost。
尝试:
const mapDispatchToProps = dispatch => ({
savePost: dispatch(savePost())
});
export default connect(undefined, mapDispatchToProps)(AddPost);