エラーロギング用のモジュールを作成し、デフォルトの角度ErrorHandlerクラスを拡張しました以下はコードです
@Injectable()
export class GlobalErrorHandler implements ErrorHandler {
private errorLogService: ErrorLogService;
constructor(
errorLogService: ErrorLogService) {
this.errorLogService = errorLogService;
}
public handleError( error: any ) : void {
// Log to the console.
try {
console.error( error.message );
console.error( error.stack );
} catch ( handlingError ) {
console.error( handlingError );
}
}
これを例外処理モジュールでブートストラップしました。これを他のモジュール(adminmoduleとclientmodule)で使用したいと思います。どうやってやるの?
プロバイダーをapp.moduleに追加する「GlobalErrorHandler」を使用するようにAngularに指示する必要があります(アプリケーションのルートレベルを表すため)
これはapp.module.tsの例です
import { NgModule, ApplicationRef, ErrorHandler } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { GlobalErrorHandler } from './error-handler'; //<-- adapt the "from" to your file
import { ServicesModule } from './services';
import { AppComponent } from './app.component';
@NgModule({
declarations: [AppComponent],
imports: [BrowserModule],
bootstrap: [AppComponent],
providers: [
{
provide: ErrorHandler,
useClass: GlobalErrorHandler
}
]
})
export class AppModule { }
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加