Это, безусловно, вещь в наши дни. Но делает ли это его идеальной… вещью и для вашего проекта? Для ваших конкретных потребностей и приоритетов проекта? Для чего используется Next.js точнее?

Может ли он работать как с сайтами-портфолио, так и… с особенно крупными веб-проектами?

Подходит ли он как для редко, так и для часто обновляемых веб-сайтов? Для обоих веб-сайтов, зависящих от богатой сторонней экосистемы, и тех, которые не используют так много библиотек?

Давайте найдем ответы на:

  • когда (и когда нельзя)
  • Зачем

… использовать Next.js.

1. Но сначала: что такое Next.js?

Это упрощенная платформа React, используемая для серверных и статических веб-приложений.

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

  • (по умолчанию) рендеринг на стороне сервера
  • совместимость с экосистемой
  • предварительная выборка
  • HMR и отчеты об ошибках
  • автоматическое разделение кода

Примечание: так как это очень похоже на PHP-разработку, многим разработчикам легко «запрыгнуть на подножку Next.js».

2. И как это работает?

Next.js отображает ваше приложение React/веб-сайт на сервере (в отличие от рендеринга на стороне клиента).

Источник: GoogleDevelopers

Итак, имейте в виду, что вам понадобится сервер… где-то.

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

Что касается недостатков серверного рендеринга:

  • более высокий уровень сложности: ожидайте написать больше кода, чтобы все работало правильно
  • это немного сложнее при работе со сторонними сервисами
  • немного сложнее в развертывании (по сравнению с рендерингом на стороне клиента и HTML)

3. Для чего используется Next.js? Для каких типов проектов вы бы использовали его?

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

Когда следует задуматься о Next.js?

Когда это лучший выбор? Подходит ли он для вашего… конкретного варианта использования, например?

В связи с этим мы определили 3 типа проектов, для которых Next.js лучше всего подходит:

3.1. Когда SEO — ваш главный приоритет

Нужна ли вам SSR (рендеринг на стороне сервера), чтобы обеспечить SEO-оптимизацию страниц на вашем веб-сайте? Тогда Next.js — ваш единственный вариант.

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

3.2. Когда контент обновляется особенно часто

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

Источник: Когда следует использовать Gatsby?

А я вот думаю:

  • новостные сайты
  • крупные сайты электронной коммерции
  • веб-сайты со списками объектов недвижимости, где регулярно добавляются новые комментарии и обновляются описания

Вкратце: если вы ожидаете, что контент на вашем будущем веб-сайте будет часто обновляться, то Next.js будет использоваться во всем вашем проекте.

4. Заключительное слово

Теперь, не могли бы вы позаботиться о совете? При попытке ответить на такие вопросы, как:

  • «Для чего используется Next.js?»
  • "Должен ли я использовать его в своем проекте или лучше использовать статический?"

… убедитесь, что вы оцениваете свои краткосрочные и долгосрочные потребности.

Другими словами: ваш веб-сайт может не нуждаться в частом обновлении контента прямо сейчас СЕЙЧАС, но, возможно, вы планируете расширить его в будущем…

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

Просто убедитесь, что вы согласуете свой окончательный выбор с вашими будущими целями.

Изображение Линн Нео из Pixabay

Статья изначально опубликована на OPTASY.com.