我正在使用Angular Cli。所以,我的HTML是:
<div *ngFor="let Item of Items" (click)="add("*next Item should be here*")"></div>
我需要发送函数add()而不是Item而是下一个元素。我怎么称呼它呢? 我应该在箭头结束时停下来,以免离开阵列
答案 0 :(得分:2)
如果index
是数组或索引集合,您可以使用特殊的<div *ngFor="let item of items; let i = index" (click)="add( i )">
变量并将其传递给您的函数:
add
然后在你的add(index: number): void {
let nextIndex = index + 1;
if( nextIndex < this.items.length ) {
// do stuff
}
else {
// error: there is no next-item
}
}
函数中检查索引:
index: number
此处记录了这些内容:https://angular.io/api/common/NgForOf
first: boolean
- 可迭代中当前项目的索引。last: boolean
- 当项目是可迭代项目中的第一项时为真。even: boolean
- 当项目是可迭代项中的最后一项时为真。odd: boolean
- 当项目在iterable中具有偶数索引时为真。- {{1}} - 当项目在iterable中有奇数索引时为真。