Angular 选项卡内容实现之间的区别是什么?

Angular 选项卡内容实现之间的区别是什么?,angular,angular7,angular8,Angular,Angular7,Angular8,我的方法是显示选项卡内容: <mat-tab-group> <mat-tab label="First"> <ng-template matTabContent> The First Content </ng-template> </mat-tab> </mat-tab-group> 第一项内容 这两者有什么区别 <mat-tab-group> <mat-tab

我的方法是显示选项卡内容:

<mat-tab-group>
  <mat-tab label="First">
    <ng-template matTabContent>
      The First Content
    </ng-template>
  </mat-tab>
</mat-tab-group>

第一项内容
这两者有什么区别

<mat-tab-group>
  <mat-tab label="First">
    <ng-template *ngIf="condition">
      The First Content
    </ng-template>
  </mat-tab>
</mat-tab-group>

第一项内容
这个呢

<mat-tab-group>
  <mat-tab label="First">
    <app-component *ngIf="condition"></app-component>
  </mat-tab>
</mat-tab-group>

A:

<app-component *ngIf="condition"></app-component>
上面的代码不会呈现任何内容。这是因为
是一个模板元素,从不直接显示。它仅在与结构指令一起使用时有效

渲染前,Angular将上述代码替换为:

<ng-template [ngIf]="condition">
  <ng-template>
    The First Content
  </ng-template>
</ng-template>

第一项内容
这就是为什么即使
条件
值是真实的,也不会显示任何内容<代码>将由Angular替换为诊断注释,由于没有结构指令,因此不会显示任何内容。

A:

<app-component *ngIf="condition"></app-component>
上面的代码不会呈现任何内容。这是因为
是一个模板元素,从不直接显示。它仅在与结构指令一起使用时有效

渲染前,Angular将上述代码替换为:

<ng-template [ngIf]="condition">
  <ng-template>
    The First Content
  </ng-template>
</ng-template>

第一项内容

这就是为什么即使
条件
值是真实的,也不会显示任何内容<代码>将由Angular替换为诊断注释,由于没有结构指令,因此不会显示任何内容。

方法1:

  <ng-template *ngIf="condition">
      The First Content
  </ng-template>
<ng-template *ngIf="condition">
      The First Content
</ng-template>
<app-component *ngIf="condition"></app-component>

第一项内容
上述模板将不会在视图中呈现,因为它是虚拟元素。我们可以将其与模板引用变量&*ngTemplateOutlet指令一起使用,如下所示:

<ng-template #myContent>This is ngTemplate content</ng-template>
<div *ngTemplateOutlet="myContent"></div>
这是ngTemplate内容
在上面的代码中,myContent是一个带有“#”符号的模板引用变量。所以元素将被内容替换。通过使用它,我们可以定义可重用的模板并在许多地方使用

方法2:

  <ng-template *ngIf="condition">
      The First Content
  </ng-template>
<ng-template *ngIf="condition">
      The First Content
</ng-template>
<app-component *ngIf="condition"></app-component>


如果条件为真,它将呈现应用程序组件模板。

方法1:

  <ng-template *ngIf="condition">
      The First Content
  </ng-template>
<ng-template *ngIf="condition">
      The First Content
</ng-template>
<app-component *ngIf="condition"></app-component>

第一项内容
上述模板将不会在视图中呈现,因为它是虚拟元素。我们可以将其与模板引用变量&*ngTemplateOutlet指令一起使用,如下所示:

<ng-template #myContent>This is ngTemplate content</ng-template>
<div *ngTemplateOutlet="myContent"></div>
这是ngTemplate内容
在上面的代码中,myContent是一个带有“#”符号的模板引用变量。所以元素将被内容替换。通过使用它,我们可以定义可重用的模板并在许多地方使用

方法2:

  <ng-template *ngIf="condition">
      The First Content
  </ng-template>
<ng-template *ngIf="condition">
      The First Content
</ng-template>
<app-component *ngIf="condition"></app-component>


如果条件是真实的,它将呈现应用程序组件模板。

我的问题关于选项卡的更多信息,关于
matTabContent
?现在我有了bug,当每个标签都有内容内的组件时,它会切换标签randomly@OPV-到目前为止,我回答了您提出的问题,您没有提到任何有关
matTabContent
的内容以及您面临的错误。您必须编辑您的问题并正确陈述问题,最好在StackBlitz或其他网站上使用可复制的示例。我的问题更多关于选项卡,关于
matTabContent
?现在我有了bug,当每个标签都有内容内的组件时,它会切换标签randomly@OPV-到目前为止,我回答了您提出的问题,您没有提到任何有关
matTabContent
的内容以及您面临的错误。您必须编辑您的问题并正确陈述问题,最好在StackBlitz或其他网站上提供可复制的示例。