Мой код компилируется, и все работает нормально, но моя IDE (код Visual Studio) показывает следующее сообщение об ошибке, и я не могу развернуть свое приложение (с помощью ng build --prod):
ОШИБКА в src / app / training / training.service.ts (61,46): ошибка TS2339: Свойство «имя» не существует для типа «{}».src / app / training / training.service.ts (62,50): ошибка TS2339: свойство «duration» не существует для типа «{}».src / app / training / training.service.ts (63,50): ошибка TS2339: свойство 'calories' не существует для типа '{}'.
Я импортирую оператор карты следующим образом:
import { map, take } from 'rxjs/operators';
и используйте его так:
...
.snapshotChanges()
.pipe(
map(docArray => {
return docArray.map(doc => {
return {
id: doc.payload.doc.id,
name: doc.payload.doc.data().name,
duration: doc.payload.doc.data().duration,
calories: doc.payload.doc.data().calories
};
});
})
)
...
Мой интерфейс выглядит так:
export interface Exercise {
id: string;
name: string;
duration: number;
calories: number;
date?: Date;
state?: 'completed' | 'cancelled' | null;
}
Что я делаюне так?