В данном видео мы будет продолжать писать наше собственное решение для виртуального скролла (виртуализации). В частности, добавим такие фичи, как отслеживание размера элементов списка и корректировка скролла при ресайзе.
Код из видео:
https://github.com/Ayub-Begimkulov/yo...
Телеграмм канал:
https://telegram.me/ayub_begimkulov_c...
Ссылка на предыдущее видео:
• Пишем библиотеку для виртуального скролла ...
Ссылка на плейлист по разработке нашего решения для виртуального скролла:
• Библиотека виртуализации с нуля
Таймкоды:
00:00 - Интро
00:20 - Смотрим на проблему с лишними замерами
01:05 - Как можно кешировать замеры?
02:34 - Кешируем замеры через хук useLatest
04:32 - Смотрим на результаты в браузере
04:55 - Проблема с хуком useLatest
08:50 - Какое есть решение у данной проблемы?
09:34 - Почему могут быть проблемы c useLayoutEffect?
10:57 - Решения проблемы с useLayoutEffect
13:11 - Перезамер элементов
18:11 - Проверяем перезамер
18:42 - Проблема при скролле вверх
20:34 - Понимаем причину прыжков при скролле
23:25 - Пишем корректировку скролла
25:26 - Проверяем корректировку скролла
26:26 - Причина скролла списка при маунте
26:53 - Исправляем корректировку скролла
28:11 - Проверяем наш фикс в браузере
28:39 - Смотрим финальные улучшения
30:26 - Заключение