在我的React Native应用程序中,我使用的是RNDBModels包,它是AsyncStorage的包装器。目前我正在通过RNDBModels保存一个JSON对象并且该方法正常工作,但是访问数据证明是具有挑战性的。
当代码从 {
'1':
{
name: 'Galaxy',
description: '20gram bars',
_id: 1
},
'2':
{
name: 'Snickers',
description: 'Hazelnuts',
count: 2,
_id: 2
}
}
方法返回时,它返回到JSON对象内部,我基本上会喜欢结果中的值,因此我可以迭代它以获取列表。
返回的结果:
[
{
name: 'Galaxy',
description: '20gram bars',
_id: 1
},
{
name: 'Snickers',
description: 'Hazelnuts',
count: 2,
_id: 2
}
]
以及期望的结果,以便我可以轻松地迭代数组中的对象,然后在React Native中呈现列表。
Object.keys
访问这些值的任何建议?我已尝试使用Object.values
,然后使用{{1}},但遗憾地无效。
答案 0 :(得分:7)
您可以使用in operator:
执行此操作const data = {
'1': {
name: 'Galaxy',
description: '20gram bars',
_id: 1
},
'2': {
name: 'Snickers',
description: 'Hazelnuts',
count: 2,
_id: 2
}
};
var array = [];
for (let prop in data) {
array.push(data[prop]);
}
console.log(array);
答案 1 :(得分:1)