这是我到目前为止所做的:
@Component({
selector: 'error-handler',
templateUrl: 'error-handler.html'
})
export class ErrorHandlerComponent extends ErrorHandler {
text: string;
constructor() {
super();
}
handleError(error: HttpErrorResponse) {
console.log("ErrorHandlerComponent, error.status: ", error.status);
this.text = error.message;
}
}
但我的流程没有进入handleError,我收到以下错误:
polyfills.js:3 Uncaught Response {_body: ProgressEvent, status: 0, ok: false, statusText: "", headers: Headers, …}
答案 0 :(得分:0)
您的ErrorHandler必须是@Injectable
,而不是@Component
。它没有与之关联的视图 - 它是一项服务。看起来应该是这样的:
@Injectable()
export class MyErrorHandler extends ErrorHandler {
constructor() {
super();
}
handleError(error) {
// do whatever
super.handleError(error);
}
}