我正在Firebase上编写Web应用程序,并希望执行以下查询:
1.获取用户的数据并将其存储为对象。
2.获取用户获得的推荐信息-存储为上述节点的子节点,并将它们存储为数组。
这是数据结构:
"users_new": {
"the_uid_of_the_user" : {
"intro" : "",
"profile_picture" : "",
"recommended" : {
"-Ly5BN73l0y1I1--1Qe0" : {
"reco_user" : "the_uid_of_the_recommended_user",
"time" : 1578504389286
},
"-Ly5KImVVNaqC9bTHU10" : {
"reco_user" : "the_uid_of_the_recommended_user",
"time" : 1578506730832
}
},
"username" : ""
}
}
这是我最初编写的查询的一部分。问题是,它将立即下载所有“推荐”节点,结果返回的不是数组。
let profileinfo=[];
let recoarray=[];
const userinfo = () => {
const k = //some code to get the user's username;
const ref1=firebase.database.ref('users');
ref1.orderByChild('username').equalTo(k).once('value', (snapshot) => {
snapshot.forEach((pdata) => {
profileinfo.push(pdata.val());
recoarray.push(pdata.val()['recommended']); //Not stored as an array
})
})
}
在不另作参考的情况下存储建议数组的方法是什么? 任何建议都将受到欢迎。谢谢!