Angular Infinite Scroll с отсортированным списком приводит к бесконечному циклуJquery

Программирование на jquery
Ответить Пред. темаСлед. тема
Anonymous
 Angular Infinite Scroll с отсортированным списком приводит к бесконечному циклу

Сообщение Anonymous »

Я работаю над проектом Angular. Я реализовал список «бесконечной прокрутки», используя IntersectionObvserver. В целом это работает довольно хорошо и удовлетворительно.
Но есть одна проблема, которую я пока не нашел решения.
Записи для создания список сортируется по возрастанию.
В Angular это вызывает проблему: список HTML строится вверх, в то время как полоса прокрутки остается в том же положении, которое вызвало событие бесконечной прокрутки, что вызывает событие срабатывать снова и снова и снова, пока пользователь не прокрутит вручную.
То, что событие запускается до тех пор, пока триггер бесконечной прокрутки находится в области просмотра, является желательным поведением, поскольку в зависимости от высоты области просмотра и предпочтений пользователя, нельзя гарантировать, что элементов всегда будет достаточно, чтобы изначально заполнить всю страницу. Новые элементы должны загружаться непрерывно, пока страница не заполнится.
Пример StackBlitz
https://stackblitz.com/edit/angular-infinite- Scroll-intersectionobserver
Прокрутите до самого конца списка, чтобы вызвать событие бесконечной прокрутки. Он сохранит полосу прокрутки в том же положении и вызовет событие при построении списка вверх.
Изображение

В функции генерированияItems() есть вызов sortItems() . Когда вы отключите этот вызов, поведение прокрутки бесконечного списка прокрутки работает правильно. Новые элементы, добавленные в список, приводят к увеличению списка и выталкивают триггер бесконечной прокрутки за пределы области просмотра.
Пример CodePen
Когда я реализую та же логика бесконечной прокрутки с использованием встроенного JavaScript с jQuery, она работает должным образом, даже когда результаты отсортированы.
https://codepen.io/mw- 108/pen/ExqPKmG
Здесь триггер бесконечной прокрутки всегда выталкивается из области просмотра при обновлении списка. Это то, чего я ожидаю.
Вопросы
Я делаю что-то не так в Angular?
Что может Мне нужно воспроизвести тот же результат, который я вижу в примере JavaScript/jQuery в Angular?

Подробнее здесь: https://stackoverflow.com/questions/790 ... dless-loop
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Jquery»