der*_*zay 3 rxjs rxjs5 angular
我Angular 5和RXJS 5.5一起使用
在我做这样的事情之前
getProjectInfo(id): Observable<any> {
const URL = `${this.API}/${id}`;
return this.http.get(URL)
.pipe(map(res => res)),
catchError(this.handleServerError);
}
handleServerError(error: any) {
console.log(error.error || error.json() || error);
return Observable.throw(error.error || error.json() || error || 'Server error');
}
Run Code Online (Sandbox Code Playgroud)
但现在我收到了这个错误
Error:(21, 5) TS2322:Type 'UnaryFunction<Observable<{}>, Observable<any>>' is not assignable to type 'Observable<any>'.
Property '_isScalar' is missing in type 'UnaryFunction<Observable<{}>, Observable<any>>'.
Run Code Online (Sandbox Code Playgroud)
我也试过这个
getProjectInfo(id): Observable<any> {
const URL = `${this.API}/${id}`;
return this.http.get(URL)
.pipe(map(res => res)),
catchError(err => this.handleError('getProjInfo', URL));
}
private handleError(method: String, URL: string): any {
return (err: any) => {
const errMsg = `error in ${method}() retrieving ${URL}`;
console.log(`${errMsg}:`, err);
if (err instanceof HttpErrorResponse) {
console.log(`status: ${err.status}, ${err.statusText}`);
}
return Observable.throw(errMsg);
};
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
Dan*_*nko 13
请记住您的括号.您返回pipe结果和catchEror结果除以,:
return this.http.get(URL)
.pipe(map(res => res)),
catchError(this.handleServerError);
Run Code Online (Sandbox Code Playgroud)
将一个支架放在自己的位置:
return this.http.get(URL)
.pipe(
map(res => res),
catchError(this.handleServerError)
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6661 次 |
| 最近记录: |