簡體   English   中英

角度輪詢 trackBy 不會觸發 ngDestroy 但組件已更新

[英]Angular polling trackBy doesn't trigger ngDestroy but the component is updated

在這個例子中https://stackblitz.com/edit/angular-ivy-hptdnu?file=src%2Fapp%2Fgrid%2Fgrid.component.html without trackBy ngOnDestroy 鈎子被觸發並且數據更新我可以理解

但在另一個例子中https://stackblitz.com/edit/angular-ivy-aan45e?file=src%2Fapp%2Fgrid%2Fgrid.component.html with trackBy ngOnDestroy 鈎子永遠不會被觸發,數據更新沒有任何問題但我真的不明白為什么! 我的意思是,如果沒有銷毀觸發,則行組件不應該在 @Input 上沒有設置器的情況下更新

你能解釋一下,我想念什么嗎?

當您了解trackBy的用途時,問題的答案就變得顯而易見(例如https://netbasal.com/angular-2-improve-performance-with-trackby-cc147b5104e5 ):使用trackBy您是在告訴 angular 不要破壞和重新創建ngFor迭代元素,但重用它們。 所以ngOnDestroy不會被觸發,因為組件永遠不會被銷毀,而是與新輸入一起重用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM