我有一个名为users
的集合,它充满了由Firebase uids命名的元素(用户),例如:
users/1k239k1293k01k923
假设我需要检索具有属性provider == "facebook"
的用户(或所有用户)。
像users/$someuser/provider == "facebook"
问题是我不知道哪个用户会匹配此属性。
我正在使用Javascript SDK (网络)
答案 0 :(得分:3)
Firebase documents非常好,我建议在那里阅读。
JS:
// Provider
var provider = "facebook";
// Find all users with certain provider
var ref = firebase.database().ref("users");
ref.orderByChild("provider").equalTo(provider).on("value", function(snapshot) {
// iterate through each match
snapshot.forEach(function(childSnapshot) {
// key will be "ada" the first time and "alan" the second time
var key = childSnapshot.key;
// childData will be the actual contents of the child
var childData = childSnapshot.val();
});
});
这是orderByChild
,equalTo
和forEach
的组合。 forEach
用于迭代每场比赛,并从那里做任何你想做的事。
.on("value"
可以更改为.once("value
,.on("child_added
等。