如何使用JavaScript从Firebase中的嵌套数据库中检索所有子级

时间:2018-07-31 18:00:33

标签: javascript firebase firebase-realtime-database

如果孩子以data / a,data / b的形式出现,我便可以对其进行检索。但是我想检索所有以data / key1 / a,data / key1 / b,data / key2 / a,data / key2 / b表示的数据。

现在我将代码用作

var rootRef = firebase.database().ref().child("notifications");
rootRef.on("child_added", snap => {
var uid = snap.child("uid").val();
});

这是给我的数据-通知/密钥1 / uid,通知/密钥2 / uid。

我的数据库设置为notifications / key1 / key1timestamp / uid,notifications / key2 / key2timestamp / uid。

如何编辑我的代码以访问它?

1 个答案:

答案 0 :(得分:1)

尝试以下操作:

var db = firebase.database();
var ref1 = db.ref("notifications");

ref1.on("value", (snapshot) => {
  snapshot.forEach((childSnapshot)=> {
    childSnapshot.forEach((childrenSnapshot)=>{
      let userId = childrenSnapshot.val().uid;
    });
}); 

假设您有此数据库:

notifications
       key1
         key1timestamp
                 uid: id_here
        key2
          key2timestamp
                 uid:id_here

由于快照位于notifications,然后循环两次以能够检索嵌套的子代