我喜欢带有可观察物的新角度的方法。它阻止我们编写.done().fail().always()
的长链。就像在JQuery中一样。它仅在NG2的引擎盖下使用| async pipe
。但是在为myObservable
加载数据时可能存在异常情况的情况如何呢?有没有办法弄清楚模板中的observable失败了?
// sample.component.ts
class SimpleComponent{
myObservable:Observable<string>;
constructor(private _someService:SomeService){
myObservable = _someService.getSomeDataByHttp();
}
}
// simple.component.html
<div>
<div>
{{myObservable | async}}
</div>
<div (anyErrorInObservable)="myObservable"> // Some kind of construction to figure out that observable failed to load
Oops, some kind of error appeared while fetching myObservable.
</div>
</div>
我知道可以使用.catch()
完成此操作。但我希望有一些更好的方法。
感谢任何进展
答案 0 :(得分:2)
目前无法处理模板中的错误。您可以使用catch()
之类的运算符来确保错误无法到达模板。
另请参阅此相关未解决问题https://github.com/angular/angular/issues/7539