截至目前,有没有办法在Angular 2中的for..of
指令中获取iterable的当前索引?换句话说,相当于Angular.js v1中的$index
...
代码示例:
<ul *for="#task of allTasks">
<li>{{ $index}} - {{ task.label }}</li>
</ul>
(当然这段代码不起作用,它不提供当前索引)
答案 0 :(得分:51)
<ul>
<template ngFor let-task [ngForOf]="allTasks" let-i="index">
<li>{{ i }} - {{ task.label }}</li>
</template>
</ul>
但是你必须使用最新版本的快速入门
BTW - 以上相当于以下语法sugar
<li *ngFor="let task of allTasks; let i=index">{{ i }} - {{ task.label }}</li>
答案 1 :(得分:19)
语法已更新,现在(截至2016年4月Angular2.beta13):
<li *ngFor="let item of items; let i = index"></li>
例如:
<li *ngFor="let item of items; let i = index">
item={{item}} index={{i}}
</li>
答案 2 :(得分:3)
使用 * ngFor,让:
hibernate.enable_lazy_load_no_trans
<强>组件:强>
<li *ngFor="let menu of tempMenuModel.MenuItems.Items;let i=index" [ngClass]="{'active' : clickedItem == i}" (click)="SelectMenu(menu,i)">
<span>{{menu.Header ==null?menu.Name:menu.Header}}</span>
</li>
答案 3 :(得分:1)
更新,请使用let,而不是#
<div *ngFor="let user of users; let i=index">
{{i}}
</div>