【发布时间】:2020-01-28 05:59:28
【问题描述】:
我在 Firebase 上保存了一个学生状态。有了这个,我有一个旅行屏幕,开始时应该过滤与旅行日期相同的存在。但是当我给console.log()时它不会打印任何东西。如何将 Firebase 日期属性(时间戳)与日期属性进行比较?
this.presencaSubscription = this.viagemService.carregarAlunosPorDataConfirmacao(this.data).subscribe(dados => {
this.presencas = dados;
console.log(this.presencas)
在服务中:
carregarAlunosPorDataConfirmacao(data: Date) {
return this.firestore.collection<Presenca>('presenca', ref => ref.where('startTime', '==', data)).snapshotChanges().pipe(
map(dados => {
return dados.map(snap => {
const data = snap.payload.doc.data();
const uid = snap.payload.doc.id;
return { uid, ...data };
})
})
)
}
【问题讨论】:
-
我在下面回答了一个有根据的猜测。如果这不能帮助您解决问题,请更新您的问题,以便我们更轻松地提供帮助,方法是包含所有变量的硬编码值(主要是
data),通过显示您想要的文档的屏幕截图期望被返回(以便我们可以检查startTime),并消除对map操作的需要,甚至可能是AngularFire(我希望您在使用常规JavaScript SDK 时也会遇到同样的问题)。
标签: typescript firebase google-cloud-firestore angularfire2