Условный рендеринг изображения на сервере в Next.js

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

У меня есть главный баннер, в котором одно изображение я хочу показать на мобильном телефоне, а другое я хочу показать на настольном компьютере.

Обычно я просто выполнял рендеринг по условию, но затем у меня возникало странное мерцание, когда изображение сначала загружало что-то по умолчанию, а затем переключалось на нужное.

Есть ли другой способ справиться с этим?

Спасибо!

Используйте медиа-запросы CSS. Или, еще лучше, изображение с условным srcset.

Terry 20.03.2024 23:02
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
59
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Я решил использовать медиа-запросы, чтобы сначала посмотреть, будет ли это отображаться на сервере, и, похоже, он делает то, что я хочу!

    <>
      <Image
        height = {800}
        width = {800}
        className = "w-full max-lg:min-h-[515px] max-lg:scale-[1]  lg:hidden"
        src = {heroMobile.src}
        alt = "hero"
      />
      <Image
        height = {1600}
        width = {1600}
        className = "hidden lg:flex"
        src = {hero.src}
        alt = "hero"
      />
    </>

Но если у кого-то есть другое решение, пожалуйста, поделитесь.

Обновлено: Извините, я разместил это до обновления и увидел ответы.

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

Ошибка типа: невозможно преобразовать объект в примитивное значение при попытке использовать литерал шаблона в require(`${some_var_string}`)
Ошибка рендеринга на телефоне <Text> должен отображаться в компоненте <Text>, но в браузере все в порядке
Невозможно обеспечить ограниченный импорт в проекте TypeScript, несмотря на настройку baseUrl и разрешение
BrowserAuthError:uninitialized_public_client_application . Получение этой ошибки при попытке единого входа с помощью MSAL для приложения React и Next.js
Глобальная настройка цвета темы antd
Невозможно увидеть товары в корзине с помощью «набора инструментов Redux»
Реакция с помощью Typescript Массив обещаний
Пользовательский выбор с абсолютной позицией позади родительских элементов div
React highcharts — расположение пользовательской всплывающей подсказки в зависимости от изменения размера окна
Получение redirect_uri_mismatch с помощью Sign on With Google