Angular 如何在其ts文件中销毁动态加载的组件?
我创建了一个动态组件加载器,它工作正常,但如何在其ts.file中销毁该组件 动态加载的部件:Angular 如何在其ts文件中销毁动态加载的组件?,angular,typescript,components,Angular,Typescript,Components,我创建了一个动态组件加载器,它工作正常,但如何在其ts.file中销毁该组件 动态加载的部件: <button class="btn btn-secondary" (click)="destroyComp()"> Destroy</button> 和HTML文件 <ng-template #popup></ng-template> 有一个destroy()方法,其工作原理与从DOM中删除组件一样 销毁组
<button class="btn btn-secondary" (click)="destroyComp()"> Destroy</button>
和HTML文件
<ng-template #popup></ng-template>
有一个destroy()
方法,其工作原理与从DOM中删除组件一样
销毁组件实例及其关联的所有数据结构
cmpRef.destroy()
谢谢您的回答。问题是,cmpRef
位于另一个组件中。但我想在单击同一组件中的按钮时销毁该组件。我不想存储ComponentRef,这就是为什么我想借助destroyComp()
函数在自己的ts文件中销毁组件,但我不知道如何实现它function@CNIS创建服务时,您可以将cmpRef
存储在服务中,这样,您可以从另一个组件访问它,并对其调用destroy()
。@CNIS刚刚看到编辑,不幸的是,您必须将引用存储在某个位置才能访问它,或者,当父组件(如果有)被销毁时,其子组件也将被销毁。谢谢,我将把变量存储在某个地方。
<ng-template #popup></ng-template>