Angular版本:7.2.0,Firebase版本:5.8.1,RxJS版本:6.3.3,AngularFire2:5.1.1
我的代码如下:
this.fbSubs.push(this.db
.collection('availableExercises')
.snapshotChanges()
.pipe(
map(docArray => {
return docArray.map(doc => {
return {
idExercise: doc.payload.doc.id,
name: doc.payload.doc.data().name,
duration: doc.payload.doc.data().duration,
calories: doc.payload.doc.data().calories
};
});
})
)
.subscribe((exercises: Exercise[]) => {
// code...
}, error => {
// code...
}));
当我尝试编译此代码时,出现以下错误:
ERROR in src/app/training/training.service.ts(41,44): error TS2339: Property 'name' does not exist on type '{}'.
src/app/training/training.service.ts(42,48): error TS2339: Property 'duration' does not exist on type '{}'.
src/app/training/training.service.ts(43,48): error TS2339: Property 'calories' does not exist on type '{}'.
我相信该语法可能与RxJS的早期版本相比已经过时,但是我似乎无法解决需要更改的内容。
我正在尝试使用snapshotChanges从Firebase数据库获取对象列表。 Angular版本:7.2.0,Firebase版本:5.8.1,RxJS版本:6.3.3,AngularFire2:5.1.1我的代码如下:...
.pipe(
map(docArray => {
return docArray.map(doc => {
return {
id: doc.payload.doc.id,
...doc.payload.doc.data() as Exercise
};
});
})
)