use*_*648 11 javascript angular
我想做这样的事情:
<div *ngFor="let parent of parents">
<div *ngFor="let child of parent.children">
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
但我不想要额外的外部div.从我能够找到的搜索开始,在Angular 1中我可以通过这样做来实现:
<template *ngFor="let parent of parents">
<div *ngFor="let child of parent.children">
</div>
</template>
Run Code Online (Sandbox Code Playgroud)
这似乎在Angular 2中不起作用.这样做的正确方法是什么?
Fil*_*auc 20
我认为这对你有用:
<ng-template ngFor let-parent [ngForOf]="parents">
<div *ngFor="let child of parent.children">
</div>
</ng-template>
Run Code Online (Sandbox Code Playgroud)
你可以在这里阅读更多:
https://angular.io/docs/ts/latest/guide/template-syntax.html#!#star-template
您现在也可以使用:
<ng-container *ngFor="let parent of parents">
<div *ngFor="let child of parent.children">
</div>
</ng-container>
Run Code Online (Sandbox Code Playgroud)
这里的优点是它具有与普通dom元素相同的语法.
小智 5
对于索引使用let-i="index"
:
<template ngFor let-hero [ngForOf]="heroes" let-i="index" let-odd="odd">
<div [class.odd]="odd">({{i}}) {{hero.name}}</div>
</template>
Run Code Online (Sandbox Code Playgroud)
更多信息:https: //angular.io/docs/ts/latest/guide/structural-directives.html#!#microsyntax
<ng-container>
表现得像一个<template>
标签(它没有添加到DOM),但允许使用更方便的*foo
结构指令语法:
<ng-container *ngFor="let parent of parents">
<div *ngFor="let child of parent.children">
</div>
</ng-container>
Run Code Online (Sandbox Code Playgroud)
有关详细信息,NgFor
请参阅https://angular.io/docs/ts/latest/api/common/index/NgFor-directive.html
归档时间: |
|
查看次数: |
10527 次 |
最近记录: |