2017-05-19 3 views
0

ng-datatable을 내 Angular 4 앱에 통합하려고합니다.ngx-datatable : pageSize vs limit

들여 쓰기 된 용도는 [limit]에 대해 무엇인지, 그리고 pageSize ((page) 이벤트의 일부로 표시됨)과 어떤 관련이 있는지 잘 모르겠습니다.

pageSize과 같은 것은 각 행의 높이와 그 중 몇 개가 테이블의 사용 가능한 뷰포트에 맞는지에 따라 다릅니다. [limit]을 변경해도 영향을 미치지 않습니다.

더 많은 데이터를 가져올 때 서버에서 특정 수의 행을 가져 오려면 어떻게해야합니까? 이 전략으로 무한 스크롤을 만들려고 노력하고 있지만 문서가 조금 간결하므로 모든 움직이는 부분이 무엇인지 분명히합니다.

답변

0

소스 코드를 살펴본 결과 이걸 발견했습니다. 이것이 pageSize의 생성 방법입니다. 제한이 전달되는 경우

// 우리가 페이징된다

https://github.com/swimlane/ngx-datatable/blob/master/src/components/datatable.component.ts

calcPageSize(val: any[] = this.rows): number { 
    // Keep the page size constant even if the row has been expanded. 
    // This is because an expanded row is still considered to be a child of 
    // the original row. Hence calculation would use rowHeight only. 
    if (this.scrollbarV) { 
     const size = Math.ceil(this.bodyHeight/this.rowHeight); 
     return Math.max(size, 0); 
    } 

    // if limit is passed, we are paging 
    if (this.limit !== undefined) return this.limit; 

    // otherwise use row length 
    if (val) return val.length; 

    // other empty :(
    return 0; 
}