Went from angular 5 to 6(using angular 6 & rxjs 6), getting the following two errors in my linter. Anybody have any ideas, please and thank you.
[ts] 'catchError' is declared but its value is never read.
[ts] Property 'catchError' does not exist on type 'Observable<HttpEvent<any>>'.
import { Injectable, Injector } from '@angular/core';
import { HttpEvent, HttpInterceptor, HttpHandler, HttpRequest } from '@angular/common/http';
import { catchError } from 'rxjs/operators';
import { Observable } from 'rxjs';
@Injectable()
export class HttpInterceptorService implements HttpInterceptor {
constructor() { }
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
return next.handle(authReq)
.catchError((error, caught) => {
console.log('Error Occurred');
console.log(error);
return Observable.throw(error);
}) as any;
}
}
This is more of a change with rxjs. You'll want to familiarize yourself with lettable operators, but heres the code change you'll want to make...
Pretty easy right! Most of the rxjs operators are now passed into the
pipe
function of the observable!