【发布时间】:2020-06-10 17:59:22
【问题描述】:
import { Injectable } from '@angular/core';
import { AngularFirestore } from '@angular/fire/firestore';
import { map } from 'rxjs/operators';
@Injectable({
providedIn: 'root'
})
export class FirestoreDbService {
constructor(private db: AngularFirestore) { }
getBuildList() {
// return this.db.collection('Builds').valueChanges();
return this.db.collection('Builds').snapshotChanges().pipe(
map(docArray => {
return docArray.map(doc => {
console.log('==', doc.payload.doc.id);
console.log('$==$', doc.payload.doc.data());
return{
id: doc.payload.doc.id,
... doc.payload.doc.data()
}
})
})
)
}
}
在最后一行我得到了错误。我认为这与打字稿有关。任何帮助表示赞赏
【问题讨论】:
-
检查
doc.payload.doc.data()的返回类型。它不是或不总是一个对象,所以 typescript 确定你不能安全地传播。
标签: angular typescript firebase google-cloud-firestore