'-6ren"> '-我正在尝试向服务添加一些错误处理,遵循 Angular guide . 相关片段: private handleError (error: Response | any) { // In a re-6ren">
gpt4 book ai didi

angular - 类型 'error' 上不存在属性 '"“| Promise'

转载 作者:太空狗 更新时间:2023-10-29 17:08:25 28 4
gpt4 key购买 nike

我正在尝试向服务添加一些错误处理,遵循 Angular guide .

相关片段:

private handleError (error: Response | any) {
// In a real world app, you might use a remote logging infrastructure
let errMsg: string;
if (error instanceof Response) {
const body = error.json() || '';
const err = body.error || JSON.stringify(body);
errMsg = `${error.status} - ${error.statusText || ''} ${err}`;
} else {
errMsg = error.message ? error.message : error.toString();
}
console.error(errMsg);
return Observable.throw(errMsg);
}

但是,我遇到了 TypeScript 错误:

error TS2339: Property 'error' does not exist on type '"" | Promise<any>'.
Property 'error' does not exist on type '""'.

我能理解为什么它会发生-- error.json()返回 Promise<any>然后是 body.error 的后续行不会工作,因为没有 error属性(property)。但是,它似乎应该期望从 .json() 返回一个 JSON 对象。 .为什么会这样,我错过了什么 Angular 指南不是?

最佳答案

同样的事情发生在我身上。当您无法导入 Response 对象时,会发生这种情况。

import { Response } from '@angular/http';

关于angular - 类型 'error' 上不存在属性 '"“| Promise<any>',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43453790/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com