是否有任何方法可以在组件代码中调用“ onLazyLoad”事件或将LazyLoadEvent.first属性设置/绑定为初始状态?
如果您需要向下滚动到选定的行,这将很有用。就我而言,我有以下网址:
我想滚动到id = 6800的项目(从URL)。我可以在服务器上找到行号并重新加载表数据,但是LazyLoadEvent对此一无所知。
我的表格组件:
<p-table #tasksTable selectionMode="single"
scrollHeight="48vh"
responsive="true"
[rows]="20"
[virtualScroll]="true"
(onLazyLoad)="loadDataOnScroll($event)"
[lazy]="true"
[totalRecords]="totalTasks"
[loading]="loading"
[columns]="cols"
[resizableColumns]="true"
[value]="tasks"
[(selection)]="selectedTask"
(onRowSelect)="onRowSelect()"
(onRowUnselect)="onRowUnselect()"
[scrollable]="true">
<ng-template pTemplate="colgroup" let-columns>
...
</ng-template>
<ng-template pTemplate="header" let-columns>
...
</ng-template>
<ng-template pTemplate="body" let-task>
...
</ng-template>
</p-table>
loadDataOnScroll实现:
loadDataOnScroll(event: LazyLoadEvent): void {
if (event.first + event.rows > this.totalTasks) {
return;
}
this.take = event.rows;
this.skip = event.first;
this.loadData();
}
任何帮助将不胜感激。