我在使用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);
});
任何人都可以使用更好的方法吗? 感谢