Sergey
Руками наоборот не очень сложно
с динамической высотой элементов?
Sergey
он не решает этого
да ладно?) А если я ща прям демку кину про этот кейс?
Dmitry
я должен там сам задать фикс высоту зачем мне это ? У меня динамичное все
Sergey
Под конкретный кейс всегда проще сделать. Чем универсально
Sergey
давай
галочку поставь https://bvaughn.github.io/react-virtualized/#/components/List
Dmitry
вот в слаке вк дискорд там нету виртуализации
Sergey
Зачастую универсальную либу настраивать намного сложнее, чем самому сделать
Sergey
Зачастую универсальную либу настраивать намного сложнее, чем самому сделать
ну хз. Я руками пописал такое, как-то не обрадовался))
Sergey
галочку поставь https://bvaughn.github.io/react-virtualized/#/components/List
Так тут заранее размеры известны для каждого элемента
Sergey
господи, кто-нибудь прочёл про галочку поставить или не?
Sergey
или о динамической высоте контейнера речь?
Sergey
Перечитай мое сообщение
Sergey
Так тут заранее размеры известны для каждого элемента
Sergey
Sergey
Но известны заранее
Dmitry
это исходник
Sergey
Но известны заранее
там есть чем эту высоту узнать из этой же либы, если что
Sergey
там есть чем эту высоту узнать из этой же либы, если что
Пока не отрендеришь каждый элемент не узнаешь размер
Sergey
и под высоту окна и под скролл окна есть
Sergey
а какие ещё способы?
Под конкретный кейс писать анализатор данных и примерно считать по среднему содержимому элементов + набор содержимого
Dmitry
а какие ещё способы?
рендер в портал но это больше лагает виртуализация в вебе подойдет для списка с фикс высотой
Alexey
а какие ещё способы?
по одному рендерить, пока сумма высоты элементов не больше высоты родителя
Sergey
Покажи
я хз что показать. В том кейсе так оно и работает) Задаёшь среднюю высоту, а потом считает реальную уже
Sergey
тут проблема может быть лишь в том чтоб это всё удачно совместить
Sergey
Это не то
почему не то?
Sergey
почему не то?
Потому что если в элементе есть картинка то уже не будет работать
Sergey
Потому что если в элементе есть картинка то уже не будет работать
тогда никак вообще не будет работать. Тут либа никак не поможет, вообще никакая. Так это устроено
Dmitry
https://discordapp.com/channels/322850917248663552/339171072832176138 для примера нету виртуализации нужна ли она ? перейдите по каналам
Sergey
Но вообще. Да. Можно заранее рассчитать для каждого элемента. Затем рассчитать для контейнера
yellow
ситуация: внутри компонента А рендерится компонент B при успользовании A через пропсы передается много пропсов для B как нормально осуществить передачу пропсов для B, чтобы не передать объект с пропсами для B т е чтобы не возникало вот такой ситуации: <A bProps={{ a: 1, b: 2 }} />
Dmitry
уверен что нету?
да я посмотрел элементы
Dmitry
Sergey
Так как известны эджкейсы
Sergey
да я посмотрел элементы
а я вижу что есть
Sergey
Это кстати не объясняет ничего
Dmitry
где ты видишь
Sergey
Может там у элементов нет содержимого
Dmitry
250 элементов
Dmitry
и открывается заметно дольше секунда примерно ее тут нету
Sergey
где ты видишь
покрути подальше
Sergey
скринкаст я уж точно не планирую записывать
Dmitry
смотри скрол какой большой
T.A
Тут уже хз
когда прописываю вручную и жму энтэр, то открывается
Sergey
смотри скрол какой большой
какая разница сколько там элементов одновременно? Всё равно там виртуализация
Dmitry
покрути подальше
грузи еще месаги выделяй родителя и через ссылку $0 смотри кол-во
Sergey
делай так. Выделяй сообщение прям текст в DevTools и скролль наверх
Dmitry
ну не пустые же посмотреть хоть нужно
Sergey
и убедись
Sergey
ну не пустые же посмотреть хоть нужно
вот именно. Посмотреть хоть нужно
Sergey
ну как там? Всё равно нет виртуализации?
Dmitry
310 элементов в доме выделение висит
Dmitry
ну как там? Всё равно нет виртуализации?
а вот теперь глянь список мемберов там есть виртуализация
Dmitry
и?
что и ? Зачем виртуализация если рендерят все ?
Sergey
🤦‍♂️
Sergey
она и в сообщениях есть
Dmitry
там не она там пагинация