Я внедряю турбо стол PrimeNG. Я могу реализовать это, но при реализации отложенной загрузки. Я не смог получить событие прокрутки. Как получить событие прокрутки в моем методе. Ниже я попробовал.
<p-table #dt
dataKey="id"
[columns]="columns"
[value]="gridData"
[scrollable]="true"
sortMode="single"
scrollHeight="500px"
*ngIf="isDataLoading"
(onLazyLoad)="loadDataOnScroll($event)"
[lazy]="true"
[rows]="25"
[totalRecords]="recordTotal"
[(selection)]="selectedRows"
(onRowSelect)="onRowSelect($event)"
(onRowUnselect)="onRowUnselect($event)"
(onHeaderCheckboxToggle)="onHeaderCheckboxToggle($event)"
selectionMode="multiple"
[virtualScroll]="true" >
</p-table>
метод для получения события lazyload.
loadDataOnScroll1(event: LazyLoadEvent) {
let firstTime: boolean;
let onScroll: boolean;
let onSort: boolean;
let globalSearch: boolean;
console.log(event);
if (event.globalFilter == null && !event.filters.hasOwnProperty('global') &&
event.hasOwnProperty('sortField') && event.sortField == undefined) {
firstTime = true;
console.log('user iscoming for the first time ');
} else if (event.globalFilter != null && event.globalFilter.length > 0 && event.filters.hasOwnProperty('global') &&
!event.hasOwnProperty('sortField')) {
globalSearch = true;
console.log('user is doing only global search');
} else if (event.hasOwnProperty('sortField') && event.sortField != undefined && event.globalFilter == null && !event.filters.hasOwnProperty('global')) {
onSort = true;
console.log('user is doing sorting');
} else if (event.hasOwnProperty('sortField') && event.globalFilter != null && event.filters.hasOwnProperty('global')) {
globalSearch = true;
onSort = true;
console.log('user is doing global search along with sort');
} else {
console.log('user is doing onscroll so do increment for page number');
// here we need to take entire event and get all possible values to call
// get api and update grid data
//
}
}
Я могу получить сортировку, фильтр, событие глобального поиска, но не могу получить событие прокрутки. Я хочу получить событие и позвонить в мою службу для получения разбитых на страницы данных.
Спасибо.