我正在使用httpClient:
get(url: string, options?:HttpOptionsInterface): Observable<HttpResponse<any>> {
return this.http.get(url, options).map((res: any) => {
return res;
}).catch((error: any) => {
if (error.status === 401) {
this.error401Handler();
}
return Observable.throw(error);
});
}
这是我的HttpOptionsInterface:
export interface HttpOptionsInterface {
headers?: HttpHeaders | {
[header: string]: string | string[];
};
observe?: 'response';
params?: HttpParams | {
[param: string]: string | string[];
};
reportProgress?: boolean;
responseType?: 'json';
withCredentials?: boolean;
}
但是我得到了错误:
错误TS2345:类型'HttpOptionsInterface'的参数不是 可分配给类型为'{headers?的参数:HttpHeaders | {[标头: 字符串]:字符串|串[]; };观察? params ?: Ht ...'。
属性“观察”的类型不兼容。 不能将“响应”类型分配给“正文”。
样本stackblitz。
答案 0 :(得分:1)
在您的界面定义中,似乎“观察”应该是“正文”而不是“响应”。