Я обновил мое угловое приложение с версии 5 до 6, и я получаю эту ошибку из следующего кода.
const request = this.evidenceService.get().map((res) => res.data) .catch(error => Observable.of(null));
Свойство 'map' не существует для типа 'Observable'.
Используйте
.pipe(map((res) => res.data))
вместо
.map((res) => res.data)
в соответствии с https://www.academind.com/learn/javascript/rxjs-6-what-changed/
в прошлом
import 'rxjs/add/operator/map' myObservable .map(data => data * 2) .subscribe(...);
сейчас
import { map } from 'rxjs/operators'; myObservable .pipe(map(data => data * 2)) .subscribe(...);
Это решило мою проблему вот код:
import { map } from "rxjs/operators";
********************************************** Пример ** Ниже **************************************
getPosts(){ this.http.get('http://jsonplaceholder.typicode.com/posts') .pipe(map(res => res.json())); } }
Операторская цепочка была переведена на использование .pipe () в RXJS v6, вы должны следовать рекомендованному пути миграции для RXJS . Кроме того, оператор catch был переименован в catchError .
Вот как это должно быть сделано сейчас:
const request = this.evidenceService.get().pipe( map((res) => res.data)), catchError(error => Observable.of(null)) );