使用Firebase JS库。尝试访问Firebase查询结果中的值没有成功:
var ref = firebase.database().ref(`/listUser/${userId}/`);
ref.orderByChild('email').equalTo('myemail@myemail.com')
.once("value",
res => {
console.log(res.val());
console.log(res.key);
})
第一个console.log返回:
{R74E2nc: {email: "myemail@myemail.com", userKey: "R74E2nc"}}
第二个console.log返回我在引用中传递的userId:
BKjAJm
我想获取的值是R74E2nc,因为这是我不知道并且需要进一步操作的值。我尝试使用res.val()。key和res.val()。userKey,但它们是未定义的。
数据库结构为:
"listUser": {
"BKjAJm": {
"R74E2nc": {email: "myemail@myemail.com", userKey: "R74E2nc"}
},
{
"x1x22": {email: "my2@my2.com", userKey: "x1x22"}
}
}
如何访问此值“ R74E2nc”?
谢谢。
答案 0 :(得分:1)
您可以尝试通过将“ value”替换为“ child_added”来尝试这段代码
var userz = firebase.database().ref()
.orderByChild("email")
.equalTo('myemail@myemail.com')
.once("child_added", function(snapshot) {
...
});