代码之家  ›  专栏  ›  技术社区  ›  lost9123193

向Redux Reducer添加对象

  •  1
  • lost9123193  · 技术社区  · 6 年前

    我想给一个名为 scoreList

    记分表 . 而是用对象替换列表:

    const INITIAL_STATE = { scoreList:[]};
    
     export default function(state = INITIAL_STATE, action) {
        switch (action.type) {
             case ADD_SCORE:
                return {...state, scoreList: {...state.scoreList, ...action.payload}}
    
        }
        return state;
    }
    

    2 回复  |  直到 6 年前
        1
  •  2
  •   Amruth    6 年前

    必须将其更新为数组。像这样做。 action.payload 是单个对象。

    return {...state, scoreList: [...state.scoreList, action.payload]}
    

    如果 动作.有效载荷

    return {...state, scoreList: [...state.scoreList, ...action.payload]}
    
        2
  •  1
  •   nanobar    6 年前

    您正在创建一个对象而不是数组。至少我假设它应该是你说的数组:

    scoreList: [...state.scoreList, ...action.payload]
    

    如果动作.有效载荷是单个项目,则忽略 ... 从它前面。