Redux调度触发,但存储未更新

时间:2016-12-26 06:14:02

标签: reactjs redux-thunk

我有一堆行动,除了一个以外都有效。 setFriend函数运行但由于某种原因它永远不会调用reducer,因此商店不会更新。

function mapDispatchToProps(dispatch){
  return {
    actions: {
      authenticate: (userId, password, handler) => {
        dispatch(AuthActions.authenticate(userId, password, handler));
      },
      register: (userId, password, userName, handler) => {
        dispatch(AuthActions.register(userId, password, userName, handler));
      },
      updateGotUserSuccess: (user, isSuccess) => {
        dispatch(AuthActions.updateGotUserSuccess(user, isSuccess));
      },
      setFriend: (friend)  => {
        debugger;
        dispatch(FriendsActions.setFriend(friend));
      }
    }
  };
}

上面列出的所有函数都有效,除了问题函数setFriend。但是当我进行调试时,如下所示,它会在调用dispatch后触及我的第一个调试器,但不会触及第二个调试器。

static setFriend(friend){
    return (dispatch) => {
      dispatch({type: FriendsActions.GOT_FRIEND_SUCCESS, payload: friend});
    };
  }

这是我的减速机

export default function getFriendReducer(state = {}, action){
  switch(action.type){
    case FriendsActions.GOT_FRIEND_SUCCESS:
      debugger;
      return ObjUtils.cloneObj(action.payload);
    case FriendsActions.GOT_FRIEND_FAIL:
      debugger;
      return ObjUtils.cloneObj(action.payload);
    default:
      return state;
  }

}

0 个答案:

没有答案