Ive upgraded my angular application from version 5 to 6 and im getting this error from the following code.
const request = this.evidenceService.get().map((res) => res.data) .catch(error => Observable.of(null));
Property 'map' does not exist on type 'Observable'.
Operator chaining has been transitioned to the use of .pipe() in RXJS v6, you should follow the recommended migration path for RXJS. Additionally, the catch operator has been renamed to catchError.
Here is how it should be done now:
const request = this.evidenceService.get().pipe( map((res) => res.data)), catchError(error => Observable.of(null)) );
according to https://www.academind.com/learn/javascript/rxjs-6-what-changed/
in past
import 'rxjs/add/operator/map' myObservable .map(data => data * 2) .subscribe(...);
now
import { map } from 'rxjs/operators'; myObservable .pipe(map(data => data * 2)) .subscribe(...);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With