Angular2:如何知道* ngFor上的迭代器数量

时间:2016-06-23 18:02:47

标签: typescript angular angular2-template angular2-directives

我想知道ngFor上迭代器的数量,以便基于我可以显示或隐藏的元素,例如我想这样做,如果迭代器的数量到达它应该停止迭代。 到目前为止,整个模板是:

<p *ngIf = "heros2.length > 3"> 
    there are two many users
    </p>
    <div *ngIf = "heros2.length == 3">
    <ul>
    <li *ngFor = 'let hero1 of heros2'>
    there are many users
    {{hero1.name}}
    </li>
    </ul>
    </div>

2 个答案:

答案 0 :(得分:7)

这是语法:

*ngFor="let hero1 of heroes2; let i=index"

查看the docs

答案 1 :(得分:1)

要获取ng的索引,您需要使用*ngFor="let element of elements; let i=index",其中&#34; i&#34;是当前的指数。 一种停止ngFor的方法可能是使用python策略创建一个数组,其中包含要迭代的元素的确切数量:

<div *ngFor="let element of range(6); let i=index">
    elements[i].name
</div>

range函数返回一个包含6个位置的数组。通过这种方式,您可以迭代定义计数中的元素。