【发布时间】:2018-12-18 15:29:37
【问题描述】:
我的 Firebase 数据库包含 JSON 对象,每个对象都具有相同的参数,如下所示。 Firebase data
我想得到一个包含每个对象国家的数组。因此,如果我有 4,000 个对象,我想获得一个包含一个国家/地区的 4,000 个字符串的数组。
现在我可以让控制台使用下面的代码将所有 4,000 个对象记录到一个数组中。
componentWillMount() {
this.fetchData();
}
fetchData = async () => {
var data1 = [];
var fireBaseResponse = firebase.database().ref();
fireBaseResponse.once('value').then(snapshot => {
snapshot.forEach(item => {
var temp = item.val();
data1.push(temp);
return false;
});
console.log(data1);
});
}
但是当我尝试这样做时
var fireBaseResponse = firebase.database().ref().child('country');
我得到了一个什么都没有的数组。
任何帮助都会很棒。
【问题讨论】:
-
相信你必须使用
snapshot.val()来访问返回的对象 -
我为每个项目做,我确实得到了一个包含 4,000 个对象的数组。问题是数组包含所有项目信息,而不仅仅是国家/地区。
-
那么你应该先将
item.val().country提取到一个新对象中,然后再将其推入data1。我希望这会有所帮助! -
您的权利。我不敢相信我没有看到。非常感谢
-
没问题。很高兴我能帮上忙
标签: javascript json firebase react-native firebase-realtime-database