【发布时间】:2020-01-28 15:14:21
【问题描述】:
我想创建一个名为 showWrapperIf 的结构指令,它要么保留整个元素及其所在的子元素,要么当条件为 true 时,删除它所在的元素(包装器),并获取所有子节点并将其保存在 DOM 中。
所以,这个结果
<div *showWrapperIf="true">
<h2></h2>
<p></p>
<any-component></any-component>
</div>
会
<div>
<h2></h2>
<p></p>
<any-component></any-component>
</div>
但是,如果condition 是false,则只需要显示孩子。例如:
<h2></h2>
<p></p>
<any-component></any-component>
我知道我可以使用 <ng-template> 和 *ngIf 来做到这一点,但是包装器有很多子级,它会使文件的大小加倍并降低可读性。
【问题讨论】:
-
如果你能创建一个同样有效的 StackBlitz 将会很有帮助。
-
谢谢,我添加了链接。 (stackblitz.com/edit/angular-grydzz)
标签: angular