#angular
Вопрос:
HTML —
<div class="search-results" infiniteScroll [infiniteScrollDistance]="2" [infiniteScrollThrottle]="50" (scrolled)="onScroll()" [scrollWindow]="true">
тс-
onScroll() {
this.skip = this.skip this.limit;
if (this.totalCount > 2) {
this.service.details(this.id, this.skip, this.limit, this.stime, this.etime)
.subscribe((res: any) => {
this.data = this.data.concat(res.data.data.rec);
this.cd.detectChanges();
},
(error) => {
this.cd.detectChanges();
});
}
}
Импортировали «InfiniteScrollModule» в модуль и также определены в TS.
Когда я придаю этому div некоторую высоту и применяю переполнение, это работает.
Но это не работает при прокрутке окна.
Раньше это работало, но теперь я не знаю, что случилось.
PS. Я новичок в angular.
Кто-нибудь может помочь?
Ответ №1:
Как я вижу, по крайней мере, для текущей версии библиотеки вы должны использовать директиву infinite-scroll вместо InfiniteScroll. Может быть, в этом и причина.
Кроме того, я бы предложил предварительно загрузить некоторые данные или использовать флажок Немедленная проверка, потому что событие прокрутки должно запускаться в div, поэтому, если здесь нечего прокручивать, событие не должно запускаться.
UPD: Оба селектора в порядке, как я вижу «[бесконечный прокрутка], [бесконечная прокрутка], [данные-бесконечная прокрутка]»