如何更新状态中的数组?

时间:2017-09-26 16:57:28

标签: reactjs react-native

当我的应用加载时,我会生成一些初始数据。我的初始状态是:

const INITIAL_STATE = { calendarData: [ ], index: 0 }

生成的数据是一个对象数组:

[
  {
    "date": "2017-09-24T16:13:24.419Z",
    "id": 0,
    "swiped": false,
    "uri": "http://www.someurl.com/24.png",
  },
  {
    "date": "2017-09-25T16:13:24.426Z",
    "id": 1,
    "swiped": false,
    "uri": "http://www.someurl.com/25.png",
  },
  {
    "date": "2017-09-26T16:13:24.426Z",
    "id": 2,
    "swiped": false,
    "uri": "http://www.someurl.com/26.png",
  }
]

我正在尝试更新calendarData,如此:

return {...state, calendarData: [...state.calendarData, ...aboveArray]};

但是,当我记录mapStateToProps

const mapStateToProps = state => {
    return { calendarData: state.calendarData };
};

控制台显示以下内容:

Object {
  "calendarData": Object {
    "calendarData": Array [],
    "index": 0,
  },

我正在尝试使用新的对象数组更新INITIAL_STATE中的空calendarData数组。

在我做出此更改之前,我正在初始化state = []并返回有效的aboveArray。现在我希望我的状态是一个具有calendarData数组和索引键的对象

state = {
    calendarData: [],
    index: 0,
}

0 个答案:

没有答案