使用ngFor循环并跳过第n个元素

时间:2017-02-21 16:18:20

标签: angular ngfor

我想知道在angular2中是否有办法使用*ngFor循环遍历数组或列表并跳过第一个或第n个元素

3 个答案:

答案 0 :(得分:14)

<div *ngFor="let item of items; let i=index">
  <div *ngIf="i != n">{{i}} is not n</div>
</div>

答案 1 :(得分:2)

我刚刚从另一个问题中学到了,您可以使用切片管来实现

 *ngFor="let item of items | slice:1;

其中 1 是您的第 n 个元素

https://angular.io/api/common/SlicePipe

另请参阅: Angular start ngFor index from 1

答案 2 :(得分:0)

您可以像这样在循环中使用管道:

html:

<ul>
  <li *ngFor="let element of object | values"> {{element}} </li>
</ul>

在管道元素中,您可以定义要控制的所有内容。
例如 在管道组件中(values.pipe.ts):

@Pipe({ name: 'values' })
export class ValuesPipe implements PipeTransform {
  transform(value, args: string[]): any {
    let values = []
    for (let key in value) {
      values.push(value[key])
    }
    return values
  }
}