我在創建基於自定義Observable
和自定義項目TemplateRef
呈現項目集合的組件時出現問題。TemplateRef項目在每次收集更改時被銷燬
該組件以Observable
和TemplateRef
作爲輸入並適當地呈現它們。問題出在集合更改的位置,集合中的所有項目都被銷燬並重新創建。
這顯然是有問題的,我依靠動畫來指示進入和離開集合的物品(或在集合中變化的位置)。
如果我的組件直接渲染組件(即不是TemplateRef
輸入),那麼每次收集更改時都不會有組件被破壞的問題。我想我可能已經將問題縮小到從模板出口上下文中的*ngFor
傳遞item
。
我已經複製了問題here,它展示了直接渲染TemplateRef
和組件之間的區別。將ngOnDestroy
記錄到控制檯以及組件:enter
的動畫。我認爲這個plnkr清楚地表明瞭這個問題。
任何幫助,這將不勝感激。
這是偉大的,謝謝。但是如果我想傳遞更多的數據,不僅僅是'item'。例如,組件的「索引」或其他屬性。 – garethdn
'index'已經可用https://plnkr.co/edit/I00K8fSCpM45y8Fvg0QV?p=preview對於其他屬性只需在'ngOnInit'中準備'items'數組 – yurzui
因此,要傳遞屬性而不是像'first','last ','index'等等,我需要直接將這些屬性添加到數組中的每個'item'中? – garethdn