将属性添加到对象数组 React Native
Posted
技术标签:
【中文标题】将属性添加到对象数组 React Native【英文标题】:Add property to array of objects 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
]
【问题讨论】:
【参考方案1】:您可以使用 map 生成一个新数组并为每个对象添加一个属性:
const newData = data.map(item => return ...item, name: 'Walking );
【讨论】:
以上是关于将属性添加到对象数组 React Native的主要内容,如果未能解决你的问题,请参考以下文章
将对象数组中的值与 React Native/Javascript 中的字符串进行比较
如何映射一组对象,删除一个并将我的状态设置为 react-native 中的新数组?