我正在尝试查询具有以下结构的单个节点:
//object in firestore
fruit = {"Orange","Apple","Pineapple","Banana","Grapes"}
现在我的逻辑设置是我有一个数组,假设我们在这个数组中有两个项目
//object in my code
fruit:any = ["Pineapple","Grapes"];
我想检查数组中的项是否存在于数据库中的水果下,我执行以下查询
checkFruits(uid,fruit):Observable<any>{
//console.log(fruit);
return this.afs.collection('profiles').doc(uid).collection(`fruit`, ref => ref.
//what to do here to make it check for each item in fruit array ??
where(`fruit.${fruit}`, '==', true)).valueChanges();
}
我无法完全理解如何在水果对象下检查数组中每个元素的存在。
答案 0 :(得分:2)
我设法这样做了:
return this.afs
.collection("profiles")
.doc(uid)
.collection(`experiences`, ref => {
let query: any = ref;
//console.log(fruit);
for (const iterator in fruit) {
console.log(iterator);
query = query.where(`fruit.${iterator}`, "==", true);
}
return query;
})
.valueChanges();
获得了帮助