我正在努力将来自Angularfire2
现在,我在Firestore文档中获得了一系列值,并且每个文档都返回一个文档。 :
我的提供商
getUserActivites() {
return this.afs.collection("users").doc(`${this.userId}`)
.snapshotChanges()
.map(list => {
let event = list.payload.data().activities
return event.map(e =>
({ activity: this.afs.doc(`activities/${e}`).valueChanges() })
)
})
}
我的组件
ionViewDidLoad() {
this.userActivities = this.agenda.getUserActivites()
})
}
然后在我看来
<div *ngFor="let item of userActivities | async">
<div *ngIf="item.activity | async; let activity;">
<p>{{ activity.start_date | amCalendar}}</p>
<p><strong>{{ activity.name}}</strong></p>
<p>{{ activity.description }}</p>
</div>
</div>
以上部分有效。
然后,我想按值start_date
对数据进行分组。我尝试创建一个基本的Angular Pipe
,但.reduce()
函数似乎无法处理一个observable。
我也尝试实现RxJs GroupBy
但没有成功。
任何人都可以在这里提出一个策略,关于如何通过这个Observable进行分组?