【发布时间】:2021-10-25 03:35:53
【问题描述】:
我曾经在我的代码中有这一行:
let initialPayload = this.db.list("/members").snapshotChanges() as Observable<any[]>
改为这一行:
let initialPayload = this.db.list("/members").snapshotChanges()
.pipe(map(actions => actions.map(a => ({ key: a.payload.doc.id, data: a.payload.doc.data() }) )));
但是,在第二行中,我收到一个错误:
类型 DatabaseSnapshot<unknown> 上不存在属性“doc”
我怀疑这个错误的解决方案是从初始代码中恢复as Observable<any[]>。但我不知道如何将其添加到第二行。应该这样(?):
let initialPayload = this.db.list("/members").snapshotChanges()
.pipe(map(actions => actions.map(a => ({ key: a.payload.doc.id, data: a.payload.doc.data() }) ))) as Observable<any[]>
-?
如果是这样,那么我的怀疑是错误的(因为在最后添加后错误仍然存在)。但我需要确保我已正确添加它,因此我将不胜感激。
另外,既然您已经阅读了这么多,也欢迎您回答这个问题: Error: Property 'doc' does not exist on type 'DatabaseSnapshot<unknown>'
【问题讨论】:
标签: angular typescript firebase