【问题标题】:Add property to array of objects React Native将属性添加到对象数组 React Native
【发布时间】:2020-08-09 23:47:18
【问题描述】:

我使用一个调用 API 的库,该 API 返回一个对象数组:

new Promise((resolve) => {
  Kit.getSamples(walkingSample, (err, results) => {
    if (err) {
      return resolve([])
    }
    this.setState({
      ActivityItem: results
    })
  })
})

其中 ActivityItem 是一个在 state 中定义的空数组。现在,这将返回如下内容:

[{
    "end": "2020-04-25T21:45:00.000+0200",
    "quantity": 11,
    "sourceName": "Health",
    "start": "2020-04-25T21:45:00.000+0200",
    "tracked": false
  },
  {
    "end": "2020-04-25T21:41:00.000+0200",
    "quantity": 21,
    "sourceName": "Health",
    "start": "2020-04-25T21:41:00.000+0200",
    "tracked": false
  }
]

这是 API 返回的内容,也是存储在我的 ActivityItem 数组中的内容。但除了 API 返回的内容之外,我还需要再添加一个属性,例如“名称”,以区分未来的不同调用。我想知道是否有任何方法可以向该数组添加一些属性,使其看起来像这样:

[{
    "name": 'Walking',
    end ": "
    2020 - 04 - 25 T21: 45: 00.000 + 0200 ", "
    quantity ": 11, "
    sourceName ": "
    Health ", "
    start ": "
    2020 - 04 - 25 T21: 45: 00.000 + 0200 ", "
    tracked ": false}, {
      "name": 'SomeOther',
      "end": "2020-04-25T21:41:00.000+0200",
      "quantity": 21,
      "sourceName": "Health",
      "start": "2020-04-25T21:41:00.000+0200",
      "tracked": false
    }]

【问题讨论】:

    标签: javascript arrays reactjs react-native state


    【解决方案1】:

    您可以使用 map 生成一个新数组并为每个对象添加一个属性:

    const newData = data.map(item => return { ...item, name: 'Walking });
    

    【讨论】:

      猜你喜欢
      • 2021-03-22
      • 1970-01-01
      • 1970-01-01
      • 2020-05-10
      • 1970-01-01
      • 2019-12-27
      • 2017-06-11
      • 2015-03-06
      相关资源
      最近更新 更多