我正在使用“@ angular / common”:“^ 6.0.7”,文档说httclient.request可以接受字符串或HttpRequest。然而,当我传入HttpRequest时,我得到错误TS2345:类型'HttpRequest <{reportProgress:boolean;观察:字符串; '>'不能赋值给'string'类型的参数。
下面是代码。
const req = new HttpRequest('GET', url, {
reportProgress: true,
observe: 'response'
});
return this.http.request(
req, url, {
observe: 'response'
}).pipe(
retry(3),
catchError(this.handleError));
谢谢。
解
看看使用的功能。就我而言
return this.http.request(
req.pipe(
retry(3),
catchError(this.handleError));
文档说您可以传递HttpRequest类型。因此,当你构建它时,通过它。
const req = new HttpRequest('GET', url, {
reportProgress: true
});
return this.http.request(req).pipe(
map(event => this.getEventMessage(event, file)),
retry(3),
catchError(this.handleError));