我正在尝试从数据库中检索数据,但是我的代码未返回所需的内容。它的结构是这样的:
这是我的代码:
firebase.database().ref('proiecte/').once('value').then(function(snapshot){
console.log(snapshot.val().nume)
});
我希望控制台返回“ ROSE”,但返回“ undefined”。也许有帮助,所以我也提到了这一点:如果我运行console.log(snapshot.val()),它将返回以下内容:
{…}
1544696773350: Object { descriere: "Proiectul este dedicat tinerilor!", nume: "ROSE" }
<prototype>: Object { … }
因此,我可以确定数据库是正确构成的,只是我没有使用正确的格式来检索数据。谁能告诉我我哪里错了?
答案 0 :(得分:0)
我设法解决了这个问题!
我所做的是将“ .once('value')。then(function(snapshot)”替换为“ .on('child_added',function(snapshot)”)。
答案 1 :(得分:0)
要解决此问题,请尝试以下操作:
firebase.database().ref('proiecte/').once('value').then(function(snapshot){
snapshot.forEach(function(childSnapshot){
let name = childSnapshot.val().nume;
let desc = childSnapshot.val().descriere;
});
});
这里的快照位于节点proiecte
上,然后使用forEach
循环并检索随机ID下的数据,因此您将能够检索nume
和{{1 }}。