我正在使用Firebase查询从我的实时数据库中获取数据。 但快照未定义。
在变大之前,一切都运行良好。 这是我的代码:
db.ref('notregis').orderByChild("has_media").equalTo(null).limitToLast(1)
.once("value", function (snapshot) {
var key = snapshot.key;
var data = snapshot.val()[key];
console.log(key, data);
console.log('Getting Feed From', key, data.username, index);
getFeed(key);
});
答案 0 :(得分:3)
在您的代码段中,快照的key
将为notregis
,因此snapshot.val()[key]
可能未定义。
相反,您可以使用快照的forEach
,它将枚举子快照(其中应该最多只有一个):
db.ref('notregis')
.orderByChild("has_media")
.equalTo(null)
.limitToLast(1)
.once("value", function (snapshot) {
snapshot.forEach(function (childSnapshot) {
var key = childSnapshot.key;
var data = childSnapshot.val();
console.log(key, data);
console.log('Getting Feed From', key, data.username, index);
getFeed(key);
});
});