无钥匙获取第一个firebase小孩

我正在尝试获取Firebase对象的第一个孩子。 我的裁判看起来像这样:

var sitesToVisitRef = firebase.database().ref('sitesToVisit') 

我知道裁判工作,因为我可以写信给它。 我的数据结构可以像这样:

 sitesToVisit: arstechnica-com: url: "https://arstechnica.com" 

但是,我不知道的关键(arstechnica-com),但我需要得到的url。

我正在试着用这个代码:

 var nextUrl; sitesToVisitRef.limitToFirst(1).once('value', function(snapshot) { console.log("snapshot key" + snapshot.key); console.log("snapshot.val.url = " + snapshot.val().url); console.log("snapshot.val" + snapshot.val()); nextUrl = snapshot.val().url; } }); 

但是snapshot.keylogging为“sitesToVisit”,而不是“arstechnica-com”。

任何帮助将不胜感激。 非常感谢!

尝试这个:

 var nextUrl; sitesToVisitRef.limitToFirst(1).once('value', function(snapshot) { for(var key in snapshot.val()){ console.log("snapshot key" + key); console.log("snapshot.val.url = " + snapshot.val()[key].url); console.log("snapshot.val" + snapshot.val()[key]); nextUrl = snapshot.val()[key].url; } }); 

你在snapshot有一个包含sitesToVisit所有子sitesToVisit的数组,因为你使用了limitToFirst(1)它只是最后一个,但它仍然是一个数组,所以你需要遍历数组来获得每个子limitToFirst(1)的键值。