У меня есть таблица, отображаемая с помощью angular материальной виртуальной прокрутки.
this.trs = [ ...batch, ...this.trs];
setTimeout(() => this.viewPort.scrollToIndex(100), 1000);
Я получаю данные и заполняю виртуальную прокрутку, а затем устанавливаю scrollToIndex равным 100. и появляется 100-я строка на экран.
Проблема здесь в том, что происходит прыжок, сначала при загрузке свитка он загружает 1-й ряд, а затем переходит на 100-й ряд. Есть ли способ по умолчанию установить его в сотый ряд. Так что он появляется прямо без прыжков.
Более глубокое понимание проблемы,
Это двунаправленная прокрутка, когда полоса прокрутки достигает вершины, она вызывает API и получает новые значения и добавляется в начало массива, а затем попадает в нижнюю часть. данные до дна.
Логика c хорошо работает, когда данные добавляются внизу, но полоса прокрутки перемещается при каждом добавлении данных сверху.
ИЛИ https://stackblitz.com/edit/angular-4cwieu?file=src%2Fapp%2Fapp.component.ts
Можно ли перейти к определенному индексу без этого тайм-аута?