redux报错 dispatch is not a function 打印dispatch 是一个对象 为state初始数据

reducer里的代码:

function showMyList(showMine = defaultState.showMine, action) {
  switch (action.type) {
    case types.SET_MY_LIST:
      return action.showMine
    default:
      return showMine
  }
}

actions里的代码:

export function setMyList(showMine) {
  return {
    type: types.SET_MY_LIST,
    showMine
  }
}

index.js里的代码

const store = createStore(
  reducer,
  compose(
    applyMiddleware(thunk),
    window.devToolsExtension ? window.devToolsExtension() : f => f //开启redux调试
  )
)

//映射dispatch到props上

const mapDispatchToProps = dispatch => ({
  setMyList: status => {
    console.log(dispatch)
    dispatch(setMyList(status)); // dispatch is not a function
  }
});
export default connect(mapDispatchToProps)(Nav)

这里dispatch打印出来是state里的初始数据,是一个对象,哪里出问题了
redux、react-redux为最新版本

阅读 6.9k
1 个回答

export default connect(null, mapDispatchToProps)(Nav) 第一个参数是必传的,坑!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题