Как дифференцировать scrollDispatcher для нескольких виртуальных прокрутки в одном компоненте?
У меня есть несколько виртуальных прокрутки (A,B,C,D) в одном компоненте. Если я прокручиваю данные, данные нужно добавлять на основе itemSize. аналогично для свитков B, C, D. Но я не могу отличить свитки (A,B,C,D)
Я использовал ScrollDispatcher в ngAfterViewInit и, пока происходит прокрутка, увеличивает номер страницы и получаю данные из API и добавляю их в прокрутку.
import { CdkVirtualScrollViewport, ScrollDispatcher } from '@angular/cdk/scrolling';
constructor(private scrollDispatcher: ScrollDispatcher, private zone:NgZone) { }
ngAfterViewInit(): void {
this.scrollDispatcher.scrolled(500)
.subscribe((viewport: CdkVirtualScrollViewport) => {
if(viewport) {
this.searchPageNumber++;
this.nextSearchPage(this.searchPageNumber);
}
});
}
nextSearchPage(pageNumber: number): void {
this.zone.run( () =>{
setTimeout( () => {
//get result from API and Bind data here
},200);
});
}