如何从DOM中删除组件?

时间:2016-04-11 06:52:44

标签: angular

我想知道如何手动删除我的组件表单DOM?我一直在看ElementRef,并在那里找到了一些工作,但我一直想知道是否有任何功能专门用来做这个?

我的设置如下:

我有一个Loader组件,通过EventEmitter调用。我将其添加到DynamicComponentLoader.loadNextToLocation(..)的视图中,然后我想将其从视图中删除。

我也找到了Renderer.destroyView(component),但这让我错了。

由于

2 个答案:

答案 0 :(得分:3)

this.dcl.loadIntoLocation(this.type, this.elRef, 'target').then((cmpRef) => {
  this.cmpRef = cmpRef;
});

然后将其删除:

this.cmpRef.dispose();

另见Angular 2 dynamic tabs with user-click chosen components

答案 1 :(得分:-1)

你可以使用*ngIf angular2如果条件结果为真,则会将元素添加到DOM中。如果结果为False,它不允许在DOM上呈现元素