Я использую несколько виртуальных прокрутки (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);
});
}