我正在尝试使用 primeng 为大量数据实现延迟加载<p-datatable>
。我已经完成了官方网站上记录的所有内容,但是我无法使其工作。
回调仅在onLazyLoad
加载表时运行一次。它不会按预期在每次滚动时触发。
<div style="max-height:300px; border:1px solid black;overflow-y:auto">
<p-dataTable #pocListref [value]="data" rowHover="true" [(selection)] = "selectedData" scrollable="true" scrollHeight="200px" [rows]="4"
[style]="{'margin-top':'30px'}" [paginator]="true" [rowsPerPageOptions]="[5,10,20]"
[lazy]="true" [totalRecords]="totalRecords" (onLazyLoad)="lazyLoad($event)">
<p-column header="Id">
<ng-template pTemplate="body" let-index="rowIndex">
{{index}}
</ng-template>
</p-column>
<p-column selectionMode="multiple" [style]="{'width':'5%'}"></p-column>
<p-column field="name" header="Name"[sortable]="true"></p-column>
<p-column field="age" header="Age" [sortable]="true"></p-column>
<p-column field="company" header="Company" [sortable]="true"></p-column>
</p-dataTable>
</div>
分页器实现同样适用。我注意到它仅在我不使用virtualScroll
属性时才与分页器一起使用,这是有道理的,但不知何故 virtualScroll 对滚动没有任何影响。
我知道已经有一个类似的问题,但它仍然得到了回答。
是否有人通过延迟加载成功使用了虚拟滚动。任何建议都会很有用。