track pasar parametros for example entre comunicacion componentes angular

pasar - Obtener índice en una for... de directiva en Angular 2



ngfor track by (4)

A partir de ahora, ¿hay una manera de obtener el índice actual de iterable en una directiva for..of en Angular 2? En otras palabras, el equivalente de $index en Angular.js v1 ...

Ejemplo de código:

<ul *for="#task of allTasks"> <li>{{ $index}} - {{ task.label }}</li> </ul>

(por supuesto, este código no funciona, no proporciona el índice actual)


La sintaxis se ha actualizado y es ahora (a partir de Angular2.beta13, abril de 2016):

<li *ngFor="let item of items; let i = index"></li>

Por ejemplo:

<li *ngFor="let item of items; let i = index"> item={{item}} index={{i}} </li>


Usa * ngPor, deja:

<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>

Componente:

SelectMenu(menu, $index) { this.clickedItem = $index; }


actualizar, use let, no #

<div *ngFor="let user of users; let i=index"> {{i}} </div>


<ul> <template ngFor let-task [ngForOf]="allTasks" let-i="index"> <li>{{ i }} - {{ task.label }}</li> </template> </ul>

Pero tienes que usar la versión más reciente del inicio rápido

Por cierto, lo anterior es el equivalente de la siguiente sintaxis de azúcar

<li *ngFor="let task of allTasks; let i=index">{{ i }} - {{ task.label }}</li>