如何从视图中删除组件?

时间:2018-07-09 12:08:54

标签: angular angular5

我想从父组件中动态删除组件。

<div>

 <my-component #component
    (remove)="onRemove(0)">
 </my-component>

 <my-component #component
    (remove)="onRemove(1)">
 </my-component>

 <my-component #component
    (remove)="onRemove(2)">
 </my-component>
</div>

子组件在onRemove函数中发射给父组件,它可以工作:

constructor(private generalViewContainerRef: ViewContainerRef) {  
}

private onRemoveWidget(index:number) {

     this.generalViewContainerRef.remove(component);
}

但是它不起作用。

我该怎么办?

1 个答案:

答案 0 :(得分:1)

您可以使用*ngIf

动态删除和添加

HTML:

<div>
 <my-component *ngIf="showComponent">
 </my-component>
</div>

TS:

showComponent: boolean = false