Я могу получить ребенка, если он присутствует в качестве данных /a, data/b. Но я хочу получить все данные, которые присутствуют в виде данных /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();
});
Это дает мне данные, присутствующие в - уведомлениях /key1/uid, уведомлениях/key2/uid.
Моя база данных сделана в виде уведомлений /key1/key1timestamp/uid, уведомлений /key2/key2timestamp/uid.
Как мне изменить свой код для доступа к этому?
Попробуйте следующее:
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
тогда цикл дважды, чтобы иметь возможность извлекать вложенные дети