无钥匙获取第一个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)
的键值。