Разрушает ли angular компонент, если мы добавляем и удаляем его из DOM вручную?
constructor(
private componentFactoryResolver: ComponentFactoryResolver,
private appRef: ApplicationRef,
private injector: Injector
) {
// Create component
const myComponentRef = this.componentFactoryResolver
.resolveComponentFactory(MyComponent)
.create(this.injector);
this.appRef.attachView(myComponentRef.hostView);
// Subscribe on 'someChange' event of the component
myComponent.instance.someChange.subscribe(() => {
// Should be unsubscribed if the component is destroyed
});
// Non Angular DOM manipulation
const myComponentElement = componentRef.hostView.rootNodes[0];
const containerElement = document.getElementById('container');
containerElement.appendChild(myComponentElement);
containerElement.innerHtml = '';
}
Некоторые подробности, некоторые подробности, некоторые подробности ... StackOverflow немного туп, чтобы понять, чтокод содержит все возможные детали