【问题标题】:Can't set state in redux store无法在 redux 商店中设置状态
【发布时间】:2019-07-15 18:31:11
【问题描述】:

每次调用 reducer 时,我都会尝试将 10 添加到计数器。我总是出错 [未处理的承诺拒绝:TypeError:null 不是对象(评估'state.loaded')]

      var initialState = {
        loaded: 10
      };
      const setRandomArray = (state = initialState, action) => {
      switch (action.type) {
        case "SETARRAY":
          return {
            ...state,
            fbArray: action.fbArray
          };
        case "CLEARARRAY":
          return {
            ...state,
            fbArray: []
          };
        case "VALUETOLOAD":
          return {
            ...state,
            counter: state.loaded + 10
          };

        default:
          return null;
      }
    };

    export default setRandomArray;

我这样调用reducer:

const getRandomPictures = async () => {
    store.dispatch({ type: "VALUETOLOAD" });
};

【问题讨论】:

    标签: reactjs redux react-redux react-state-management


    【解决方案1】:

    我认为问题出在您的 switch 案例上,您的 reducer 在 default 案例中返回 null,这会使您的状态对象为 null,请尝试返回状态本身。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-06-07
      • 2021-06-04
      • 1970-01-01
      • 2021-06-03
      • 2018-11-30
      • 1970-01-01
      • 2019-09-23
      • 1970-01-01
      相关资源
      最近更新 更多