Наличие двух разных компонентов навигации для мобильных и настольных компьютеров в React.js

Я думал о том, следует ли мне иметь две разные панели навигации, одну для мобильных устройств и для рабочего стола, и просто условно визуализировать ту или другую, или если я должен просто пройти весь путь с запросами и более условным рендерингом на самом javascript, что бы вы предлагаете? Моя панель навигации также зависит от того, вошел ли пользователь в систему или нет. Заранее спасибо.

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Массив зависимостей в React
Массив зависимостей в React
Все о массиве Dependency и его связи с useEffect.
0
0
90
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я бы предложил использовать медиа-запросы. Если вы визуализируете навигацию для мобильных и настольных компьютеров, вам понадобится логика JS, чтобы определить, в каком окне просмотра вы находитесь. Если вашему приложению React всегда нужно выяснить, в каком окне просмотра оно находится в первую очередь на стороне клиента, это может привести к неприглядной перезагрузке или перепрошивке. Вам понадобятся хуки, такие как useEffect, чтобы определить, в каком окне просмотра вы находитесь. Однако, если все ваши компоненты React имеют, например, рендеринг на стороне сервера, то это не очень эффективно. Взгляните на TailwindCss, там легко использовать медиа-запросы. Или проверьте свои любимые веб-сайты, которые также имеют разные версии навигации, чтобы выяснить, как они это делают. Если вы хотите настроить навигацию в зависимости от того, вошел ли пользователь в систему или нет, я бы рекомендовал использовать createContext/useContext .

Другие вопросы по теме