Javascript 角度-如何删除动态组件而不引用hostView

Javascript 角度-如何删除动态组件而不引用hostView,javascript,angular,typescript,Javascript,Angular,Typescript,我正在创建一个角度可拖动的弹出窗口,可以使用ComponentFactory动态创建。它一直运行良好,直到我创建了一个从可拖动组件“继承”的表组件,以便我可以使用 有很多代码,因此这里是该项目的Github回购的链接。 我会尽我所能在这里解释我的思维过程 在AppComponent中有一个,它是ViewContainerRef,因此我可以创建动态弹出窗口并将它们插入其中 我有一个PopupManagerService,它允许我从任何其他组件打开新的弹出窗口。组件可以调用openPopup()函

我正在创建一个角度可拖动的弹出窗口,可以使用ComponentFactory动态创建。它一直运行良好,直到我创建了一个从可拖动组件“继承”的表组件,以便我可以使用

有很多代码,因此这里是该项目的Github回购的链接。

我会尽我所能在这里解释我的思维过程

AppComponent中有一个
,它是ViewContainerRef,因此我可以创建动态弹出窗口并将它们插入其中

我有一个PopupManagerService,它允许我从任何其他组件打开新的弹出窗口。组件可以调用
openPopup()
函数,然后服务将向AppComponent发出一个事件,告诉它创建一个新的弹出窗口

我跟踪每个新弹出窗口的方法是将其自己的hostView存储在自己的实例中。因此,当弹出窗口想要删除自身时,它可以将其主机视图传递给PopupManagerService,并可以轻松找到它

除了表格组件之外,这一切都可以正常工作。它基本上是一个将表附加到DragDropDialogComponent的弹出内容的组件

基本上,现在我只想找到一种方法来关闭TableComponent,就像DragDropDialogComponent关闭一样