Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 将对象放入@NgModule中的提供程序_Angular_Typescript_Sentry - Fatal编程技术网

Angular 将对象放入@NgModule中的提供程序

Angular 将对象放入@NgModule中的提供程序,angular,typescript,sentry,Angular,Typescript,Sentry,我正试图在一个角度5项目上设置哨兵。指示显示了放置在提供程序中的对象,如下所示: import * as Raven from 'raven-js'; import { BrowserModule } from '@angular/platform-browser'; import { NgModule, ErrorHandler } from '@angular/core'; import { AppComponent } from './app.component'; Raven .con

我正试图在一个角度5项目上设置哨兵。指示显示了放置在提供程序中的对象,如下所示:

import * as Raven from 'raven-js';
import { BrowserModule } from '@angular/platform-browser';
import { NgModule, ErrorHandler } from '@angular/core';
import { AppComponent } from './app.component';

Raven
.config('https://KEY')
.install();

export class RavenErrorHandler implements ErrorHandler {
handleError(err:any) : void {
Raven.captureException(err.originalError);
}
}

@NgModule({
imports: [ BrowserModule ],
declarations: [ AppComponent ],
bootstrap: [ AppComponent ],
providers: [ { provide: ErrorHandler, useClass: RavenErrorHandler } ]
})
export class AppModule { }
我的项目在providers数组中还有一些内容,如下所示:

  providers: [
{ provide: ErrorHandler, useClass: RavenErrorHandler }, //sentry
MapDataService,
GraphService
]

这是允许的吗?我问这个问题是因为我对这个很陌生,我不能让哨兵工作,我只是对这部分感到不安,在我开始查看其他地方之前,我想看看这是否合适。

这完全可以。您正在AppModule中注册三个提供程序-
ErrorHandler
MapDataService
GraphService


还说每次应用程序需要ErrorHandler时,它应该使用您自己的
RavenErrorHandler

RavenErrorHandler是做什么用的?我不是100%确定,但它在说明中,完整的版本是流:在什么说明中?你能澄清一下吗?在上面的帖子里放上完整的说明,我想弄清楚的是,把一个对象放在提供者数组中,然后像我那样与其他提供者一起流动,是否可以。但是,你从哪里得知要这样做的?这是在线教程吗?官方文件?