我无法在任何地方找到差异的良好描述。与*ngIf
和ngIf
*ngFor
<li *ngFor="let video of page" ...>
<img src="api/Videos/{{video.id}}/thumbnail">
</li>
以及ngFor
<template ngFor let-labelid [ngForOf]="labelLookup | keyValueFilter" >
<label [ngStyle]="{'background-color': labelLookup[labelid].color}">
<input (click)="changeLabel(labelid)" type="radio" name="labelSelector" value="{{ labelid }}" [checked]="labelid == 1">
</label>
</template>
答案 0 :(得分:6)
区别在于*ngFor
在内部转换为<template ngFor [ngForOf]="..."
。
它们是等价的,但前者写起来更方便。
显式版本(<template ngFor ...>
)允许一次将指令应用于多个元素,而隐式版本(简写)仅使用<template>
标记包装应用它的元素。
使用Angular 2.0.0 final,添加了<ng-container>
元素,允许在行为类似于<template>
元素的元素上使用简写语法(不添加到DOM)。
另见