Я создаю много динамических компонентов, используя:
this.factory = this.componentFactoryResolver.resolveComponentFactory(SliderComponent);
this.sliderComponentReference = viewContainerRef.createComponent(this.factory);
Когда мне нужно уничтожить компонент, я вызываю метод уничтожения:
this.sliderComponentReference.destroy();
Я понимаю, что он удалил динамический компонентоднако, если смотреть на переменную сразу после того, как я заметил, что она все еще содержит информацию:
changeDetectorRef: ViewRef_ {_view: {…}, _viewContainerRef: ViewContainerRef.. }
componentType:(...)
hostView: ViewRef_ {_view: {…}, _viewContainerRef: ViewContainerRef... }}
injector:(...)
Вопросы:
Почему переменная все еще имеет ссылку на экземпляр компонента, если он был уничтожен?
Сохраняется ли компонент в памяти?Если да, то можно ли его восстановить?