我正在使用Angular的最新版本,并且有一个包含3个对象的数组“ myarray”。
我要使它具有这样的div:
<div id="num2">
<div id="num1">
<div id="num0">
通常和* ng一起使用。.
<div *ngFor="let something of myarray; let i = index" [attr.id]="'num'+i">
问题在于,增量会逐渐增加,因此会从0变为2,而不是反向...
<div id="num0">
<div id="num1">
<div id="num2">
如何使它减小?
答案 0 :(得分:3)
使用:
<div *ngFor="let something of myarray; let i = index;"
[attr.id]="'num' + (myarray.length - i - 1)">
答案 1 :(得分:1)
@ nicholas-k答案也是正确的,但是我认为最好的方法是使用ngFor
指令提供的count。
<div *ngFor="let something of myarray; let cnt = count; let i = index;" [attr.id]="'num' + ( cnt - i - 1 )">
答案 2 :(得分:0)
您可以将myarray的长度设置为变量,然后用索引减去它
像这样声明一个变量
myarrayLength ;
在设置了值的函数中
this.myarrayLength =myarray.length;
然后您可以在ng-for中减去
<div *ngFor="let something of myarray; let i = index" [attr.id]="'num'+ (myarrayLength - i)">