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

湳有乔沐
  • 25

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为最新版本

回复
阅读 2.2k
1 个回答

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

你知道吗?

宣传栏