angular2 ngfor循环


 

angular2 在组件模板中可以循环数组集合等对象,语法非常简单,如:

 <ng-container *ngFor="let item of model.list">
                    <div class="sermons-post">
                      {{item.name}}
                     </div>
</ng-container>

但是,很多情况下我们需要的是另一种循环方式,常见的根据计数条件来循环指定的次数,如js的:for(var n=0;n<10;n++ )

然而高大上的angular2确并不支持这种比较基础的语法(抱歉我没谷歌到,如果有,请告诉我),如果想实现这种方式的模板指令循环,可以采取一种迂回的方式,将指定循环的数字

转换成对应大小的数组,做法如下:

在模板中将数字转换成对应大小的数组

  <ng-container *ngFor="let i of  arr(model.pages).fill(1);let n=index">
        <li>
<a [routerLink]="['/list',1,{page:n+1}]" >{{n+1}}</a>
        </li>
 </ng-container>

组件中需要定义arr对象,它是Array数组对象的别名,

export class ListContentsecComponent implements OnInit {
    arr = Array;
    //省略...
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM