Angular:获取ngFor中的当前索引

ste*_*Kim 6 angular

我有以下角度:

<div class="test" *ngFor="let item of data; let i = index">
    {{item}}
</div>

<div class="function_div" (click)="test(i);">Test Button </div>
Run Code Online (Sandbox Code Playgroud)

然后在.ts,

export class test{

  test(){
     console.log(i);
  }

}
Run Code Online (Sandbox Code Playgroud)

我想获得一个当前索引号的变量.

我怎样才能获得当前的指数?

谢谢

Viv*_*shi 13

根据OP对问题的评论:

所以,我试图获取ngFor的索引,以便在触发另一个函数之前对数据数组进行比较.例如,单击一个按钮时将触发test()函数,然后它将检查当前索引,并对其执行某些操作.

你应该这样做:

<div class="test" *ngFor="let item of data; let i = index">
    // In your case this line should be within ngFor loop
    <div class="function_div" (click)="test(i);">Test Button </div>
    {{item}}
</div>
Run Code Online (Sandbox Code Playgroud)

注意:永远不要调用如下函数:

{{ test(i) }} //每次循环中的任何变化都会执行此操作


小智 7

你总是可以采用简单的方法,就像这样:

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

          {{ i }} {{ item }}

    </div>
Run Code Online (Sandbox Code Playgroud)