在剃刀页上我可以写:
@for (int i = 1; i <= Model.TotPages; i++)
{
<div class="pagmenu">
@if (i == Model.CurPage)
{
@Html.ActionLink(i.ToString(), "Index", "Home", new { curPage = i, catId = Model.CatId, discounted = Model.Discounted, search= Model.Search }, new { @class = "btn btn-primary" })
}
else
{
@Html.ActionLink(i.ToString(), "Index", "Home", new { curPage = i, catId = Model.CatId, discounted = Model.Discounted, search = Model.Search }, new { @class = "btn btn-default" })
}
</div>
}
等效角度是多少?* ngFor等同于foreach而非for,据我所知。
//in ts
n=10;
<div *ngFor="let a of ' '.repeat(n).split('');let i=index">
{{i}}
</div>
或使用函数返回数组
//in .ts
n=10;
getFoolArray(n)
{
return new Array(n)
}
<div *ngFor="let a of getFoolArray(n);let i=index">
{{i}}
</div>
另一个选择是创建指令重复,请参见this SO answer