Javascript 使用firebase for Web检索数据
我正在尝试从firebase数据库检索数据:Javascript 使用firebase for Web检索数据,javascript,firebase,firebase-realtime-database,Javascript,Firebase,Firebase Realtime Database,我正在尝试从firebase数据库检索数据: firebase.database().ref("/appointments").orderByChild("doctor").equalTo(doctorId).on("value", function(snapshot) { var appointmentsData = snapshot.val(); for(var appointment in appointmentsData) { if (!appointmentsData.
firebase.database().ref("/appointments").orderByChild("doctor").equalTo(doctorId).on("value", function(snapshot) {
var appointmentsData = snapshot.val();
for(var appointment in appointmentsData) {
if (!appointmentsData.hasOwnProperty(appointment)) continue;
var obj = appointmentsData.appointment;
}
});
如果我是console.log appointment或console.log appointmentsData,我会得到正确的值,但是如果我是console.log appointsdata.appointment,我会得到未定义的值
知道如何从firebase返回的对象检索属性和值吗?您想使用
firebase
内置的forEach
函数。它允许您迭代快照,并轻松获取该对象中每个属性的键和值。它可以是另一个对象或平面值
firebase.database().ref("/appointments").orderByChild("doctor").equalTo(doctorId).on("value", function(snapshot) {
snapshot.forEach(function(childSnapshot) {
// key
var key = childSnapshot.key;
// value, could be object
var childData = childSnapshot.val();
// Do what you want with these key/values here
...
});
});
参考:
对Firebase数据库执行查询时,可能会出现多个结果。因此,快照包含这些结果的列表。即使只有一个结果,快照也将包含一个结果列表@先知的答案显示了如何循环列表。非常感谢!这应该出现在firebase入门指南中