首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态添加ng-template

动态添加ng-template
EN

Stack Overflow用户
提问于 2018-04-05 12:28:29
回答 1查看 7.4K关注 0票数 3

我想在HTML中动态添加以下内容。

代码语言:javascript
复制
<ng-template #elseblock *ngIf="var">
    <h1>
        {{heading}}
    </h1>
</ng-template>

我使用下面的方法来实现这一点。

在app.component.ts文件中:

代码语言:javascript
复制
htmldata: any = `<ng-template #elseComponent *ngIf="var">
<h1>
  {{ heading }}
</h1>

`;

在app.component.html中

代码语言:javascript
复制
 <div [innerHTML]="htmldata"> </div>

但是这种方法只在DOM中呈现h1标记(没有ng模板)。

请帮我动态添加ng-template,以便#else block,*ngIf也能工作。

EN

回答 1

Stack Overflow用户

发布于 2018-04-05 12:47:20

根据我对你问题的理解,你想做内容投影。

对于这种用例,您应该使用模板出口。

代码语言:javascript
复制
<ng-template #heading let-heading>
  <h1>
    {{heading}}
  </h1>
</ng-template>


<ng-container *ngTemplateOutlet="heading; context: ContextObj">
</ng-container>

官方Angular文档ngTemplateOutlet

或者在ngTemplateOutlet上发表一篇很棒的博客文章

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49664177

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档