Перейти к содержанию

Автоматическая статическая оптимизация

Если на странице присутствуют getServerSideProps, Next.js будет рендерить страницу при каждом запросе (рендеринг на стороне сервера).

В противном случае, Next.js выполняет предварительный рендеринг страницы в статическую разметку.

В процессе предварительного рендеринга объект роутера query будет пустым. После гидратации Next.js запускает обновление приложения для заполнения query параметрами маршрутизации.

next build генерирует HTML-файлы для статически оптимизированных страниц. Например, результатом для pages/about.js будет:

1
.next/server/pages/about.html

А если на эту страницу добавить getServerSideProps, то результат будет таким:

1
.next/server/pages/about.js

Заметки

  • при наличии кастомного App оптимизация для страниц без статической генерации отключается
  • при наличии кастомного Document с getInitialProps убедитесь в определении ctx.req перед рендерингом страницы на стороне сервера. Для страниц, которые рендерятся предварительно, ctx.req будет иметь значение undefined

Комментарии