首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在每个ng内容上添加一些文本?

如何在每个ng内容上添加一些文本?
EN

Stack Overflow用户
提问于 2022-10-13 10:26:58
回答 1查看 27关注 0票数 0
代码语言:javascript
运行
复制
        <app-component  [date]="'13.10.2022'">
              <app-test-content [content]="content"></app-test-content>
            </app-component >
代码语言:javascript
运行
复制
Here is from app-component

<div *ngFor="let number of [1,2,3]">
  <h1>{{date}}</h1>
  <ng-content></ng-content>
</div>

如何将日期放在每个ng-内容之后?

目前是这样的:

13.10.2022

13.10.2022

13.10.2022

标题

是一种很好的方法。[医]月桂,[医]雷公藤,[医]罗汉果。

标题2

是一种很好的方法。[医]月桂,[医]雷公藤,[医]罗汉果2。

标题3

是一种很好的方法。[医][[ est ]][[est]][[est]]( rhoncus3 )

但我需要:

13.10.2022

标题‘.’‘.’‘.’.‘’.‘’[医]月桂,[医]雷公藤,[医]罗汉果。

13.10.2022

标题2‘.’‘.[医]月桂,[医]雷公藤,[医]罗汉果2。

13.10.2022

标题3‘.’‘.’.[医][医]毛霉[ est ]][[est],rhoncus3.

EN

回答 1

Stack Overflow用户

发布于 2022-10-13 11:28:08

为了在循环中进行角内容投影,要在循环内进行角内容投影,需要使用ngTemplateOutlet而不是ng内容。

ngTemplateOutlet指令允许您从TemplateRef创建嵌入式视图。TemplateRef表示可用于实例化嵌入视图的嵌入模板。

在父组件中:

代码语言:javascript
运行
复制
<app-child [date]="'13.10.2022'">
    <ng-template #textSlot let-text>
        {{content}}
    </ng-template>
</app-child>

在儿童部分:

代码语言:javascript
运行
复制
<div>
  <div *ngFor="let number of [1,2,3]">
    <h1>{{date}}</h1>
    <div>
      <ng-container
        *ngTemplateOutlet="textSlotTmpl, 
                     context: { $implicit: text }"
      ></ng-container>
    </div>
  </div>
</div>

child.component.ts:

代码语言:javascript
运行
复制
import { Component, Input, ContentChild, TemplateRef } from "@angular/core";

@Component({
  selector: "app-child",
  templateUrl: "./child.component.html",
  styleUrls: ["./child.component.css"]
})
export class ChildComponent {
  @Input() date: string;
  @ContentChild("textSlot") textSlotTmpl: TemplateRef<any>;
}

然后你就会得到你的预期结果。

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

https://stackoverflow.com/questions/74054214

复制
相关文章

相似问题

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