2017-03-27 19 views
5

Açısal 2'de şablon hatası olduğunda, uygulamanın tamamı çalışmaz.Şablon hataları (ve diğer hatalar) açısal 2'de nasıl kullanılır?

Yalnızca hataya neden olan şablona sahip olan bileşen işe yaramaz ve uygulamanın geri kalanı düzgün çalışıyor mu?

Hatalar, bir hata oluştuğunda uygulamanın yanıt vermeyi kesmeyecek şekilde nasıl işlenir?

+3

Onları düzeltmek ve hataları ile kod gemi değil varsayalım: (Bu uygulama başarısız olur iyi bir şey. Ancak, özel ['ErrorHandler'] kullanabilirsiniz (https://angular.io/docs/ts/ En son/api/çekirdek/dizin/ErrorHandler-class.html) ... – Sasxa

+1

Aynı sorunla yüzleşiyor ama şablon ayrıştırma hatası etrafında bir çözüm gibi görünmüyor. @harryjohn bu konuda herhangi bir düzeltme aldınız mı? – Kanchan

cevap

4

Sen özel ErrorHandler kullanabilirsiniz:

class MyErrorHandler implements ErrorHandler { 
    handleError(error) { 
    // do something with the exception 
    } 
} 
@NgModule({ 
    providers: [{provide: ErrorHandler, useClass: MyErrorHandler}] 
}) 
class MyModule {} 
+0

Büyük cevap, Ama bu sınıf Uygulamanın yüklüyor mu? Uygulamanın mı yoksa bazı özel bileşenlere mi? Bunu ana modülde mi çağırmalıyım? Lütfen biraz daha açıklayıcı bilgi veriniz.Lütfen –

+0

@PardeepJain Bu bir kök sağlayıcıdır, bu yüzden tüm uygulama için çalışmalıdır. Eğer tembel yüklü modülleri ve onların enjektör ile birden fazla ErrorHandler varsa ne olur bilmiyorum.Onlardan iki tane yazdım: bir gerçek uygulama için bu, hata bastığında hata kaydeder, ikincisi bu can sıkıcı bölge istisna durdurmak için HMR ile hizmet verirken ve stil çalışması yaparken. Ancak her ikisi de bu örnekte, AppModule seviyesinde sağlayıcı ile birlikte. Daha fazla keşfe çıkmadım ... – Sasxa

+0

tamam bilgi için bir sürü teşekkür, bir şey daha denedim ama neden hata olduğunu bilmiyorum bazı hatalar, ErrorHandler için seprate modülü oluşturmak zorunda mıyım? ya da appModule içinde cevaplamada yaptığınız gibi mi aldınız? –

-1

kullanarak? işareti, bir nesne/dizi özelliğini şablona bağlarken bunun etrafında bir çözümdür.

"user?.name?.firstname" 

büyük veri nesnesi API ve eklemesini geldiğinde mümkün şablon bağlayıcı hataları işlemek için gereken daha konsolide bir çözüm arıyorsunuz? Her özellik için istikrarlı ve uzun bir çözüm değil.