Ich habe ein seltsames Problem, wo aus irgendeinem Grund Spleiß immer letzten Element aus Array löscht, obwohl die alert
gibt richtigen Index.eckig 4 Spleiß löscht immer das letzte Element aus Array
Die onRemove()
Methode ist, was das Entfernen macht.
<button (click)="onAdd()">Add</button>
<ul>
<li *ngFor="let course of courses; index as i; even as isEven">
{{ i }} - {{ course.name }} <span *ngIf="isEven">(EVEN)</span>
<button (click)="onRemove(course)">Remove</button>
</li>
</ul>
export class AppComponent {
courses = [
{ id: 1, name: 'course1' },
{ id: 2, name: 'course2' },
{ id: 3, name: 'course3' },
];
onAdd() {
this.courses.push({ id: 4, name: 'course4' });
}
onRemove(course) {
let index = this.courses.indexOf(course);
alert(index); // I get correct index here
this.courses.splice(index, 1);
}
}
sind Sie sicher, dass Sie nicht auf der Suche auf '{{i}}' und denke, es ist '{{course.id} } '? Der Code funktioniert gut http://plnkr.co/edit/tpl:AvJOMERrnz94ekVua0u5?p=preview –