相关疑难解决方法(0)

Angular2:遇到异常/错误后,应用程序崩溃/无响应

如何告诉Angular在遇到异常时不阻止整个应用程序?

我不确定它是否可能,因为谷歌没有启发我.但它似乎对任何单页Web应用程序都至关重要.

Angular是快速的,但只要遇到异常并抛出错误,整个应用程序就会变得无法响应.

我知道在Javascript中

try {
  doSomething();
}
catch(err) {
  handleErrors(err);
}
Run Code Online (Sandbox Code Playgroud)

可能会解决问题.

但我只想知道是否有任何Angular特定解决方案或解决方法?

angular

28
推荐指数
2
解决办法
9658
查看次数

Angular 2:自定义ExceptionHandler更改检测滞后

我正在尝试ExceptionHandler在Angular 2应用程序中实现自定义,该应用程序将未捕获的错误提交给自定义AlertsService.目标是允许主要App组件订阅由其提供的警报,AlertsService以便它可以在UI中显示错误.

我看到的问题是,在遇到另一个错误之前,提交给AlertsService自定义的错误ExceptionHandler不会反映在UI中.这导致UI总是在实际提供的内容之后的一个警报AlertsService.

我的猜测是这种行为与更改检测和ExceptionHandler的特殊情况有关,但我不确定从何处开始.期待Angular2专家的帮助!

下面的示例代码,请点击此处:https://plnkr.co/edit/xPoWCELA9IHqeLBS4wXs p = preview

import { Component, ExceptionHandler, Injectable, OnInit, provide } from '@angular/core';
import { bootstrap } from '@angular/platform-browser-dynamic';
import { Subject } from 'rxjs/Subject'

export interface Alert {
  message: string;
}

@Injectable()
export class AlertsService {

  private alertTriggeredSubject = new Subject<Alert>();

  alertTriggered = this.alertTriggeredSubject.asObservable();

  triggerAlert(message: string) {
    this.alertTriggeredSubject.next(<Alert>{ message: message });
  }

}

@Injectable()
export class CustomExceptionHander …
Run Code Online (Sandbox Code Playgroud)

typescript angular

4
推荐指数
1
解决办法
3296
查看次数

标签 统计

angular ×2

typescript ×1