用离子查询Firebase
问题描述:
我开始在离子与火力的发展和我面对一点忧虑。这是我的数据库。我想显示用户X是其成员的所有房间。在每个组中都有一个表格用于列表成员。但我可以列出所有的房间。用离子查询Firebase
"rooms" : {
"-Kq-SLPGXoyW5bn8384X" : {
"createdAt" : 1501098764132,
"group_dp" : "img_base64",
"groupname" : "PDCI",
"members" : [ "10", "11", "12" ],
"ownerId" : "10",
"type" : "groupe"
},
"-Kq-StfFDhhuOgMhNrae" : {
"createdAt" : 1501098908584,
"group_dp" : "img_base64",
"groupname" : "Echo",
"members" : [ "10", "13", "14", "15", "16", "17", "18" ],
"ownerId" : "10",
"type" : "onetoone"
}
}
function Rooms($firebaseArray, UserService, firebase, $localStorage, $sessionStorage) {
var currentUser = UserService.getProfile();
var ref = firebase.database().ref();
var rooms = $firebaseArray(ref.child('rooms'));
return {
all: function() {
rooms.$loaded().then(function(response) {
console.log(response);
angular.forEach(response, function(room) {
ref.child('room-messages').child(room.$id)
.orderByChild("createdAt")
.limitToLast(1)
.on("child_added", function(snapshot) {
room["last_message_content"] = snapshot.val().content;
});
})
});
return rooms;
}
答
每the documentation,最好的办法是将有多个树;一个房间和一个会员。在会员树列表中,他们是房间树中的所有房间的一部分。当您需要了解所有房间时,会员只是参考特定会员条目的一部分,然后通过房间条目获取数据。
OKay谢谢我试试。 –