Angular中ViewContainerRef类的“分离”方法究竟是什么?

时间:2018-02-20 05:40:12

标签: angular

Angular docs描述为:

  

insert一起使用以在当前容器中移动视图。

但是,当我使用它时,似乎,组件或附加到它的任何元素在某处消失。我在DOM中看不到它。

它究竟做了什么?

2 个答案:

答案 0 :(得分:1)

remove =从 DOM树中删除组件(称为 ngOnDestroy 生命周期挂钩)。

detach =从 DOM树中删除该组件,但是该组件仍处于“活动状态”,可以使用插入< / strong>方法。

答案 1 :(得分:0)

  

...该组件或与其相连的任何元素都消失在某个地方。我在DOM中看不到它。

detach()函数从调用它的viewContainerRef中删除给定索引(默认为0)中的元素。
因此,基本上,您可以从DOM中删除一个元素,然后将其重新插入,而无需重建模板。
您可以使用搜索指令here

找到一个很好的用例