demo http://plnkr.co/edit/7uoVecfa62i8No8GtQHI?p=preview
Когда я скрываю первый раздел с вложенными компонентами, используя * ngIf, запускается ngOnDestroy каждого вложенного компонента.
<div *ngIf="!ff2">
<my-component
></my-component>
<my-component
></my-component>
<my-component
></my-component>
<my-component
></my-component>
<my-component
></my-component>
</div>
Вывод в консоли:
init
init
init
init
init
destroy
destroy
destroy
destroy
destroy
Но когда я скрываю второй раздел, где субкомпоненты дублируются * ngFor, не каждый ngOnDestroy запускается.
<div *ngIf="!ff">
<my-component
*ngFor="#i of [1,2,3,4,5,6]"
></my-component>
</div>
Вывод в консоли:
(6) init
(3) destroy
Есть ли у вас какие-либо идеи, если я что-то не так, или есть проблема в angular2? Спасибо.