Kod komponentu:
import { Component } from "@angular/core";
@Component({
templateUrl:"home.html"
})
export class HomePage {
public items: Array<string>;
constructor() {
this.items = ["item1", "item2", "item3"]
}
public open(event, item) {
alert('Open ' + item);
}
}
Widok:
<ion-header>
<ion-navbar primary>
<ion-title>
<span>My App</span>
</ion-title>
</ion-navbar>
</ion-header>
<ion-content>
<ion-list>
<ion-item *ngFor="let item of items" (click)="open($event, item)">
{{ item }}
</ion-item>
</ion-list>
</ion-content>
Jak widać w kodzie, deklaruję procedurę obsługi kliknięcia w ten sposób (click)="open($event, item)"
i wysyłam zarówno zdarzenie, jak i pozycję (zadeklarowaną w *ngFor
) do open()
metody (zadeklarowanej w kodzie komponentu).
Jeśli chcesz tylko pokazać element i nie potrzebujesz informacji z wydarzenia, możesz po prostu zrobić (click)="open(item)"
i zmodyfikować open
metodę w ten sposóbpublic open(item) { ... }
angular2
jeśli jest toAngular 1
aplikacja?