是否有可能在角度2+中进行条件内容投影(跨越)

我想提供默认内容,只有当内容不被转义时才会出现。

例如,这是我的组件模板:

<article>
    <header>
        <ng-content select="[header]"></ng-content>
    </header>
    <section>
        <ng-content></ng-content>
    </section>
</article>

我可以像这样使用它:

<my-component>
    <h1 header>This is my header</h1>
    <p>This is my content</p>
</my-component>

现在,如果我想提供一个默认标题。 可能吗; 没有像ngAfterContentInit检查内容那样的ngAfterContentInit


你可以用纯CSS做到这一点! 想象一下你有以下几点

<ng-content select=".header"></ng-content>
<h1 class="default-header">
     This is my default header
</h1>

那么如果提供了内容,以下CSS将隐藏标题:

.header + .default-header {
    display: none;
}

如果没有提供标题,则display:none规则不匹配。

请注意,您必须关闭内容封装以使用此: encapsulation: ViewEncapsulation.None

链接地址: http://www.djcxy.com/p/38163.html

上一篇: Is it possible to do conditional content projection (transclusion) in angular 2+

下一篇: What is the most secure way to authorize an user in Android?