好的,我正在使用firebase我尝试了一些来自docs的代码,这些代码向我展示了如何从我的数据库中检索数据。我正在使用Web Docs 这是我的数据库的样子
1001
从上面开始,我使用
获取对象 MyApp-446464
users
foo
-foobar
first_name:"foo"
last_name:"bar"
bar
-barfoo
first_name:"bar"
last_name:"foo"
但问题是,如果我使用
,我似乎无法获得价值firebase.database().ref('users/').once('value').then(function(snapshot) {
var username = snapshot.val();
});
它给我的未定义可以有人协助我做错了什么
答案 0 :(得分:5)
您的代码要求提供整个用户列表。所以它必须在回调中处理该列表:
firebase.database().ref('users/').once('value').then(function(snapshot) {
snapshot.forEach(function(userSnapshot) {
var username = userSnapshot.val();
console.log(username.first_name);
});
});
答案 1 :(得分:1)
这不可能有/users/uid/id2
。
确保使用ref.child('users').child(uid).set(userDataObject)
保存用户数据。
然后,您将能够使用orderByChild
和equalTo
检索数据。您可以使用this question作为参考来实现它。
var ref = firebase.database().ref();
ref.child('users').orderByChild('first_name').equalTo(username.first_name).once('value' ...