我最近遇到了「如何檢測服務中的更改並使其在組件中可見」的問題。組件中的DoCheck檢測服務中的更改
DoCheck(){
if(this.componentVar != this.myService.serviceVar){
this.componentVar = this.myService.serviceVar;
}
}
,而且運作良好:
我把它用DoCheck()解決了!但我沒有看到這是一個好方法,所以這是我的問題: 您認爲這個解決方案是一個很好的解決方案嗎?
可能更容易在客戶端上訂閱服務的可觀察性並從那裏驅動更改或比較。 DoCheck被稱爲很多。請參閱https://angular.io/docs/ts/latest/guide/lifecycle-hooks.html#!#docheck,瞭解以這種方式掛鉤的缺點 – silentsod