以下代码:
private getJSON(): Observable<any> {
return this.http.get('./reportNav-NEW.json')
.map((res:any)=> res.json())
.catch((error:any) => console.log(error));
}
错误给了我:
类型的参数'(错误:任何)=&gt; void'不能赋值给参数 类型'(错误:任何,被捕获:可观察)=&gt; ObservableInput&LT; {}&GT;”。 类型'void'不能分配给'ObservableInput&lt; {}&gt;'。
它出现在.catch((error:any) => console.log(error));
答案 0 :(得分:12)
这对我有用(感谢评论中的@trevor)
private getJSON(): Observable<any> {
console.log(document.location.href);
return this.http.get('...')
.map((res:any)=> res.json())
.catch((error:any) => {
return Observable.throw(error);
})
}
更新:现在使用rxjs 6,您必须从“rxjs / operators”调用“throwError”运算符,并使用它而不是“Observable.throw”。