【发布时间】:2021-09-09 16:16:14
【问题描述】:
我已经完美地运行了我的应用程序
"@angular/fire": "^6.1.5",
“火力基地”:“^8.6.3”,
就像
服务.ts
getUserEventSummary(userId) {
this.firestore.collection(`/user/${userId}/event_summary`).doc('current').snapshotChanges().pipe(
map(changes => changes.payload.data())
);
}
组件.ts
this.service.getUserEventSummary(this.userId).subscribe((res: any) => {
this.values = res;
}
这样的代码遍布整个应用程序。 现在我已经转移到最新版本的 firebase
"firebase": "^9.0.1", "@angular/fire": "^7.0.4",
新的变化是
service.ts
getUserEventSummary(userId) {
return getDoc(doc(db, `user/${userId}/event_summary`, 'current'));
}
还有组件.ts
this.service.getUserEventSummary(this.userId).subscribe((docSnap: any) => {
if (docSnap.exists()) {
this.values = docSnap.data();;
}
}
我需要一个返回相同行为的方法,即该代码返回承诺的可观察对象。
此外,快照更改很难在服务文件上实现。 请帮助我找到比更改组件代码更好的方法。
【问题讨论】:
标签: angular firebase google-cloud-firestore