Angular中如何让*ngFor循环从索引1而非0开始?
如何让Angular *ngFor的循环索引从1开始而非0?
Angular的*ngFor内置的index属性默认从0开始,没法直接修改它的起始值,但你可以通过简单的数值计算来实现显示和传参都从1开始的效果,具体改法如下:
修改模板代码
把模板里显示索引的{{i}}改成{{i + 1}},如果你的switchUsers方法需要接收从1开始的索引,调用时也要传i + 1:
<div class="all-users" > <div class="nested-items" *ngFor="let data of flattenedResponse[0]; let i=index;" (click)="switchUsers(i + 1)"> <h4>{{i + 1}}</h4> <img src="{{data.image}}" alt="profile"> </div> </div>
说明
- 显示层面:
i + 1会把原本从0开始的索引转换成从1开始的数值,直接在模板中渲染即可。 - 方法传参:如果
switchUsers逻辑需要对应API返回的起始索引(从1开始),调用时也要传入i + 1,确保逻辑匹配。
内容的提问来源于stack exchange,提问作者Abdullah Roshan
相关产品推荐
相关产品推荐

