2016-06-30 2 views
4

6 개의 객체가 있고 ngFor를 사용하여 최대 4 개의 요소 만 반복 할 배열을 반복합니다. 어떻게 할 수 있습니까 ??각도 2의 ngFor를 사용하여 일부 객체 만 배열을 반복하는 방법

<div class="item active" *ngFor="#data of lengthArray"> 
content 
</div> 

LengthArray에는 6 개가 있지만 최대 4 개의 레코드 만 루프하는 방법은 무엇입니까 ??

또 다른 div에서 4 번째 레코드에서 6 번째 레코드로 반복하고 싶습니다. 어떻게하면 4 번째 레코드에서 시작할 수 있습니까 ??

답변

9

당신은 시작 매개 변수와 함께 slice pipe를 사용할 수 있습니다. start 매개 변수는 필수이며 end 매개 변수는 선택적입니다.

<div class="item active" *ngFor="#data of lengthArray | slice:start[:end]"> 
    content 
</div> 
+0

우리가 내부 상태를 가질 수와 같은 1 다음 시작 data.index == 4해야 할 때? – sudhir

2

당신은 인덱스를 캡처하고 덜 정말 코드를 테스트하지 않았습니다 4

<div class="item active" *ngFor="#data of lengthArray;i=index"> 
    <div *ngIf="i<=4"> 
     content 
    </div> 
</div> 

다음 확인하지만, 유래 여기에 예를 많이 찾아 더 연구 할 수 있습니다. ..

Angular 2: how to apply limit to *ngFor?

필터에 대한 더 ... How to apply filters to *ngFor

+0

위와 같은 조건을 적용 해 주셔서 감사합니다 slice : [i + 1] : [i + 4] like – sudhir

0

간단한 해결책 :

<tr *ngFor=""let obj of ArrayogObjs; let i=index"> 
     <td *ngIf="i<4"> 
      {{obj.name}} 
     </td> 
    </tr> 
관련 문제