Firebase:如何在javascript中读取来自不同子对象的子对象?

Firebase:如何在javascript中读取来自不同子对象的子对象?,javascript,firebase,firebase-realtime-database,Javascript,Firebase,Firebase Realtime Database,我知道上面的问题令人困惑,但这里我想以解释的方式从firebase阅读: 从图中可以明显看出,我希望检索所有围成圆圈的threechild的“route_name”,并将其记录在javascript中。 为此,我尝试以下方法: var buses_Ref = firebase.database().ref('online_drivers/'); buses_Ref.on('child_added', function (data) { console.log(data.val().r

我知道上面的问题令人困惑,但这里我想以解释的方式从firebase阅读:

从图中可以明显看出,我希望检索所有围成圆圈的threechild的“route_name”,并将其记录在javascript中。 为此,我尝试以下方法:

var buses_Ref = firebase.database().ref('online_drivers/');
buses_Ref.on('child_added', function (data) {
     console.log(data.val().route_name);
});
但它显示未定义

如果我试图控制log数据,它会显示这一点,我认为这是两个孩子Jigjigasiinay

console.log(data);

联机驱动程序下有两个嵌套的动态子节点。通过使用
child\u added
Firebase已经处理了其中一个级别,但是您需要在回调代码中处理另一个级别

最简单的方法是使用
DataSnapshot.forEach()


请添加作为
data
传递的数据结构。
buses_Ref.on('child_added', function (snapshot) {
  snapshot.forEach(function(data) {
    console.log(data.val().route_name);
  })
});