Как стать автором
Обновить

Задачи для фронтенд-тренировки: реализуем отдельные элементы интерфейсов YouTube, Instagram, Spotify, GitHub

Время на прочтение3 мин
Количество просмотров4.9K
Всего голосов 4: ↑2 и ↓2+4
Комментарии2

Комментарии 2

дада удачи вам с чатом
прям только сейчас из соседней темы:


расскажите лучше как вы победили скрол в чате.
99% людей скажут скрол есть скрол, но только 1% кто работал с чатами знает что это самая серьезная проблема.
Например позиции скрола чтобы контент не прыгал:
1) топ позиция, добавление сообщений в начало, контент прыгает! как боролись?
Для загрузки предыдущий следующий коментарией, обычно делает observer триггер после последнего сообщения и перед первым. Так вот при первой загрузки, если отображается порция сообщений из центра, добавляются тригеры, но как мы знает при добавление сообщений в пустой чат, по дефолту скрол будет всегда в позиции низ,
2) как вы боролись с конфликтом между добавлением в пустой чат сообщений и между бесконечным тригером "подгрузить еще", т.к. по дефолту из за особенностей выше описанных скрол будет прижат вниз.


дада и хаки flex column reverse для фишки live сообщений, когда пользователь прокрутил в самый низ, и приходят новые сообщения из вебсокета, то нужно что бы как раз скрол прижимался вниз, а контент соответственно "прыгал"(сдвигался) вверх. И обратная ситуация, когда пользователь прокрутил в самый низ (прижал скрол вниз), но сообщение не последнее, то нужно подгрузить историю, при этом контент как раз НЕ должен сдвигаться верх.

Например позиции скрола чтобы контент не прыгал
контент и должен прыгать, ведь если я нахожусь в конце чата, и мне приходит сообщение, то я бы хотел что бы контент подпрыгнул и показал мне это сообщение.
Но со скролом, когда добавляешь в конец или начало, все и так ясно, хуже всего когда добавляешь элемент в центр контента.
2. как вы боролись с конфликтом между добавлением в пустой чат сообщений и между бесконечным тригером «подгрузить еще», т.к. по дефолту из за особенностей выше описанных скрол будет прижат вниз.
а почему это проблема то? В чем проблема поставить дополнительный флаг?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий