Я искал вокруг совсем немного и не нашел ничего, что помогло мне преодолеть горб. Я думаю, что я применил Angular2 ExceptionHandler по мере необходимости, но он никогда не будет вызван.Angular2 ExceptionHandler не работает
Main.ts:
import { bootstrap } from '@angular/platform-browser-dynamic';
import { disableDeprecatedForms, provideForms } from '@angular/forms';
import { AppComponent } from './app.component';
import { ExceptionHandler, Injector , provide, Provider} from '@angular/core';
import { APP_ROUTER_PROVIDERS } from './app.routes'; // <-- load in global routes and bootstrap them
import { ErrorHandler } from './errorhandler/error-handler.component';
bootstrap(AppComponent,[
APP_ROUTER_PROVIDERS,
disableDeprecatedForms(),
provideForms(),
provide(ExceptionHandler, {useClass: ErrorHandler})
])
ОШИБОК handler.component.ts:
import { Component, Injectable, ExceptionHandler } from '@angular/core';
import { ROUTER_DIRECTIVES } from '@angular/router';
import { APP_PROVIDERS } from '../app.providers';
@Component({
moduleId: module.id,
template: `Error happened here!!!!`,
directives: [ ROUTER_DIRECTIVES ],
providers: [ APP_PROVIDERS ]
})
@Injectable()
export class ErrorHandler extends ExceptionHandler {
call (exception: any, stackTrace?: any, reason?: string): void {
}
}
У меня есть ошибка HTTP, что я принуждая произойти в одном из моих услуг (для теста обработка исключений) и ожидал, что мой «глобальный» обработчик получит вызов. Я что-то упускаю? К сожалению, сейчас не так много документации ...
TIA.
Джеймс