首页 > 解决方案 > 从mapDispatchToProps更改为mergeProps时dispatch不是函数错误?

问题描述

我需要在 mapDispatchToProps 中处于状态,所以,我发现需要用 mergeProps 函数替换 mapDispatchToProps。曾是

function mapDispatchToProps(dispatch) {
  return {
    load: () => dispatch(actions.loadProjects()),
  };
}

变成

function mergeProps(stateProps, dispatchProps) {
  const {dispatch} = dispatchProps;

  return {
    load: () => dispatch(actions.loadProjects()),
  };
}

并连接从

export default connect(mapStateToProps, mapDispatchToProps)(ViewComponent);

export default connect(mapStateToProps, mergeProps)(ViewComponent);

但是有错误消息dispatch is not a function

标签: reactjsredux

解决方案


尝试这个:

function mergeProps(stateProps, dispatchProps) {

  return {
    load: () => dispatchProps.loadProjects(),
  };
}

推荐阅读