我在使用 firebase 查询我的数据时遇到了一些问题。
用户有一些宠物,我想获取用户在宠物节点中拥有的所有宠物的列表。我做了以下方法:
for (let petUID in this.user.pets) {
this.af.database.object("/pets/" + petUID ).subscribe(data => {
this.ownPets.push(data);
});
}
最后,我得到了ownPets
变量中的所有宠物。但这种方法对我来说很尴尬。
如果从数组内的宠物更新了宠物节点中的任何数据,则会ownPets
再次推送该宠物,并且我会在ownPets
.
我尝试了另一种方法:使用查询方法并在其中发送一个对象数组,equalTo
但我收到一个错误,说我无法发送对象数组。
this.af.database.list('/pets', {
query: {
orderByChild: "name",
equalTo: ["pet1", "pet2"]
}
}).subscribe (data => {
console.log(data);
});
有人有更好的方法我可以使用吗?谢谢