我想从我的Cloud Firestore获取数据。该集合称为“反馈”。以下代码有效
constructor(private fireStore: AngularFirestore) {
this.fireStore.collection('feedback')
.get()
.subscribe((item: firebase.firestore.QuerySnapshot) => {
this.feedbackItems = item.docs.map((dataItem: firebase.firestore.QueryDocumentSnapshot) => dataItem.data());
});
}
与导入
import { AngularFirestore } from '@angular/fire/firestore';
但是this.feedbackItems
现在是我来自云存储区的反馈对象的数组。是否有可能获得可观察的结果?
获取数据的专业方法是什么?
我在stackoverflow上找到了几种解决方案,但是某些功能不可用(我猜是因为使用了不同的库或JavaScript?)
答案 0 :(得分:1)
是否有可能获得可观察的结果?
您可以从map
导入rxjs/operators
来更改响应。然后,您可以将其分配给一些可观察的对象。
this.feedbackItemObservable = this.fireStore.collection('feedback')
.get()
.pipe(map((item:firebase.firestore.QuerySnapshot) => {
return item.docs.map((dataItem: firebase.firestore.QueryDocumentSnapshot) => dataItem.data());
}));