@mik222

Хорошая имплементация ListViewModel?

Добрый день.
Есть задача.
Рендер больших списков и таблиц(имеется в виду от 1 000 000 записей) в браузере.
Десктопные UI тулкиты её решают ondemand рендерингом видимого окна, например (QML ListViewModel) .
Какова, на ваш взгляд, наилучшая клиентская библиотека которая помогает решить этот случай.
Спасибо.
-----
Интересно так-же, как вы бы решили проблему с удаленными запросами и кешированием.
В данный момент, единственное что приходит в голову, это использовать lifo стек, и таймаут по последнему запросу к индексу.
Что-то типа, если скролл не скроллил последние N миллисекунд то
достать M последних запросов на рендер элемента и выполнить их.
Таким образом мы избегаем переполнения буффера в случае скроллинга из начала в конец(1 000 000 ajax запросов, если делать тупо ondemand)
  • Вопрос задан
  • 124 просмотра
Пригласить эксперта
Ответы на вопрос 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
on-demand подразумевает загрузку данных чанками, скажем по 1000 штук.

Что до описываемого вами кейса с прокруткой из начала в конец - если мы резко переходим - это будет один запрос. Если мы плавно скролим - мы можем загружать данные большими чанками и все будет так же плавно и хорошо, пока мы проскролим пару тысяч айтемов данные для следующего чанка так же загрузятся.

Тут намного интереснее реализация виртуального скрола. Рекомендую вам искать готовые ибо самостоятельно у вас написать оный хоть и выйдет - вы убъете на это безумное количество времени.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы