关于 multipla actions 时 mapDispatchToProps 和 bindActionCreators 的问题
Question about mapDispatchToProps and bindActionCreators when multipla actions
我学习 React Redux 并阅读 here 关于使用 mapDispatchToProps
和 bindActionCreators
单独使用时 bindActionCreators
效果很好:
export default connect(null, (dispatch) =>
bindActionCreators(actionCreators, dispatch)
)(FormContainer);
但是我有更多的操作并尝试了这个:
function mapDispatchToProps(dispatch) {
return {
bindActionCreators(actionCreators, dispatch),
clearPosts: () => dispatch(clearPosts()),
}
}
这会产生如下错误:
。我怎样才能将它们结合起来?我阅读了docs,但我没有看到任何关于此的内容,请指教
试试下面的代码
function mapDispatchToProps(dispatch) {
return {
todoActions: bindActionCreators(actionCreators, dispatch),
clearPosts: () => dispatch(clearPosts()),
}
}
现在推荐使用“地图对象”符号如果你真的想使用connect
。
const mapDispatchToProps = {
...actionCreators,
clearPosts
}
此外,建议 to use redux hooks instead of connect 如果您可以使用函数组件,因为它们通常更易于使用。
(如果您正在学习向您展示 connect
的教程,它可能已过时,请改为查看 official redux tutorials)
我学习 React Redux 并阅读 here 关于使用 mapDispatchToProps
和 bindActionCreators
单独使用时 bindActionCreators
效果很好:
export default connect(null, (dispatch) =>
bindActionCreators(actionCreators, dispatch)
)(FormContainer);
但是我有更多的操作并尝试了这个:
function mapDispatchToProps(dispatch) {
return {
bindActionCreators(actionCreators, dispatch),
clearPosts: () => dispatch(clearPosts()),
}
}
这会产生如下错误:
。我怎样才能将它们结合起来?我阅读了docs,但我没有看到任何关于此的内容,请指教
试试下面的代码
function mapDispatchToProps(dispatch) {
return {
todoActions: bindActionCreators(actionCreators, dispatch),
clearPosts: () => dispatch(clearPosts()),
}
}
现在推荐使用“地图对象”符号如果你真的想使用connect
。
const mapDispatchToProps = {
...actionCreators,
clearPosts
}
此外,建议 to use redux hooks instead of connect 如果您可以使用函数组件,因为它们通常更易于使用。
(如果您正在学习向您展示 connect
的教程,它可能已过时,请改为查看 official redux tutorials)