/ / Jak wyłączyć "stronę" Zdarzenie wyjściowe wywoływane w trybie Przewiń w pliku ngx-datatable? - kątowe, ngx-datatable

Jak wyłączyć "stronę" Zdarzenie wyjściowe wywoływane w trybie przewijania w pliku ngx-datatable? - kątowe, ngx-datatable

Nie chcę nieskończonej paginacji przewijania. Zamiast tego po prostu chcę wywoływać stronicowanie po kliknięciu numeru strony w samej stopce. Używam paginacji na serwerze. Tak wyzwalanie zdarzenia "strona" na każdym przewijaniu powoduje, że mój interfejs stronicowania api wystrzeliwuje zbyt wiele żądań, których mój serwer nie może obsłużyć.

Zasadniczo jak mogę wyłączyć Nieskończone przewijanie z stronicowania po stronie serwera?

Odpowiedzi:

2 dla odpowiedzi № 1

Byłem w stanie obejść ten problem przez obsługęwyjście (scroll) w ngx-datatable. Pomysł polega na użyciu flagi, aby wyłączyć stronicowanie po wywołaniu zdarzenia przewijania, a następnie włączyć je ponownie po przekroczeniu limitu czasu. Coś takiego.

Szablon

<ngx-datatable (page)="doPaging($event)" (scroll)="handleScroll()">...</ngx-datatable>

W twoim komponencie

scrollTimeout: any;
suppressPaging: boolean = false;
doPagining() {
if (!this.suppressPagining) {
//do paging
}
}

handleScroll() {
this.suppressPagining = true;

if (this.scrollTimeout) {
celarTimeout(this.scrollTimeout);
}

this.scrollTimeout = setTimeout(() => {
this.suppressPagining = false;
}, 100)
}