ДОМ рендерю после асинхронного запроса?
Отрисовать сразу, например с "плейсхолдерами" - а потом заменить их на нормальный контент.
По разному, можешь показать всю страницу после полной прогрузки. Или отобразить часть после прогрузки. Зависит скока там у тебя времени это все занимает.
Skeleton load? Я когда-то делал что-то похожее: https://vgcod3.github.io/skeleton-loading/ вот и сама страница, на быстром интернете не видно, но все-же: https://vgcod3.github.io/FooDeli/
поставь медленный интернет и глянь как у других сделано
Ну да cumulative layout shift cls - можно вставить заглушки на места слайдера. Если точно известно, сколько товаров, можно и на них заглушки. Или прелоадер на время загрузки и футер - желательно прижать к низу. А ещё лучше это всё отрендерить на сервере и сразу отдать клиенту) Там судя по внешнему виду статика.
Как мне тут задействовать поисковую строку(поиск блюд)? Меню при клике только загружается. Значит, когда я активирую инпут, мне загружать все полностью? Ето проект для практики js, но хотелось все-де все сделать как надо
Поиск обычно на бэке релазизуют. Отправляешь туда запрос куда передаешь значение инпута и он тебе возвращает новый массив элементов
Можно это делать на изменение инпута или нажатие на кнопку инпута, если на изменение инпута ещё прикрутить какой нибудь debounce - чтобы не заспамить запросами сервер
Обсуждают сегодня