首页 > 解决方案 > 如何在 redux reducer 中更新 initialState

问题描述

嗨,我通过向它添加新的数组变量来更新减速器中的初始状态,但是当我控制台这个减速器状态时,它向我显示旧状态,并且当我尝试访问该数组时,该数组未处于导致崩溃的状态。

import {
  USER_SET_LOC,
  USER_SET_FIRST,
} from '../actions/userActions'

const initialState = {
  location: {
    region: 'ABC',
    isDefault: true
  },
  first: [],
  second : []
}

function userReducer (state = initialState, action) {

  switch (action.type) {
    case USER_SET_LOC: {
      return {
        ...state,
        location: {
          ...action.payload,
          isDefault: false
        }
      }
    }
    case USER_SET_FIRST: {
      return {
        ...state,
        first: action.payload
      }
    }
    default:
      return state;
      
  }
}

export default userReducer

我稍后添加了第二个数组。当我在另一个班级中安慰状态时,我得到了这个

{"first": [], "location": {"isDefault": true, "region": "ABC"}}

无论我在 initialState 中发生什么变化,它都不会出现。当我卸载它并重新安装应用程序时,会出现新的更改

标签: javascriptreactjsreact-nativeredux

解决方案


推荐阅读