尝试引用已实现的类属性

时间:2018-05-17 21:14:14

标签: angular typescript

我正在实施Angular ErrorHandler类。

app.module.ts提供商中我有:

{ provide: ErrorHandler, useClass: GlobalErrorHandler },

然后在实现的类GlobalErrorHandler中,我有:

@Injectable()
export class GlobalErrorHandler implements ErrorHandler {

  public errorAdded$: EventEmitter<string>;

  constructor(private injector: Injector) {
    this.errorAdded$ = new EventEmitter();
  }

当我尝试从其他服务中引用errorAdded$属性时,TypeScript会抱怨:

@Injectable()
export class AlertService {
   private subject = new Subject<Alert>();
   private keepAfterRouteChange = false;

   constructor(private router: Router, private errorService: ErrorHandler) {
       errorService.errorAdded$.subscribe((error) => this.error(error));
    }
    //...
  }

如果我尝试注入GlobalErrorHandler,我会收到错误消息。

如何正确引用errorAdded$(GlobalErrorHandler类注入其他类时的属性?)

0 个答案:

没有答案