Angular 使用Firestore对多个查询进行组合测试
它希望为Firestore创建多个查询,以便能够将观测值合并为一个。我使用Firestore(angularFire)的快照更改,然后使用最组合的快照更改对两者进行分组。我在TypeScript上有此错误,如果不使用有效负载,我无法在数组上获取这两个值: 类型“DocumentChangeAction[]”上不存在属性“payload”。ts(2339) 我用valueChanges()更改了.snapshotChanges(),现在我可以用concat、merge或CombineTest返回值Angular 使用Firestore对多个查询进行组合测试,angular,typescript,google-cloud-firestore,Angular,Typescript,Google Cloud Firestore,它希望为Firestore创建多个查询,以便能够将观测值合并为一个。我使用Firestore(angularFire)的快照更改,然后使用最组合的快照更改对两者进行分组。我在TypeScript上有此错误,如果不使用有效负载,我无法在数组上获取这两个值: 类型“DocumentChangeAction[]”上不存在属性“payload”。ts(2339) 我用valueChanges()更改了.snapshotChanges(),现在我可以用concat、merge或CombineTest返回值
getAnnonces(limit){
const requete1 = this.firestore.collection('annonce', ref => ref
.where("secteurActivite","==", "Banque")
.where("departement","==", "Rhône")
.orderBy("date")
.limit(limit)).snapshotChanges();
const requete2 = this.firestore.collection('annonce', ref => ref
.where("secteurActivite","==", "Finance")
.where("departement","==", "Isère")
.orderBy("date")
.limit(limit)).snapshotChanges();
const values = combineLatest(requete1, requete2)
.subscribe(
responseData => {
this.tabTest = responseData.map(item => {
return {
id : item.payload.doc.id,
titre : item.payload.doc.get('titre'),
secteurAct : item.payload.doc.get('secteurActivite'),
departement : item.payload.doc.get('departement'),
region : item.payload.doc.get('region'),
description : item.payload.doc.get('description'),
infosClefs : item.payload.doc.get('name'),
};
})
});
}//END GETANNONCES
getAnnonces(limit){
const requete1 = this.firestore.collection('annonce', ref => ref
.where("secteurActivite","==", "Banque")
.where("departement","==", "Rhône")
.orderBy("date")
.limit(limit)).valueChanges()
const requete2 = this.firestore.collection('annonce', ref => ref
.where("secteurActivite","==", "Finance")
.where("departement","==", "Isère")
.orderBy("date")
.limit(limit)).valueChanges()
merge(requete1, requete2).subscribe(console.log);
}//END GETANNONCES