Автоматическая статическая оптимизация¶
Если на странице присутствуют getServerSideProps
, Next.js будет рендерить страницу при каждом запросе (рендеринг на стороне сервера).
В противном случае, Next.js выполняет предварительный рендеринг страницы в статическую разметку.
В процессе предварительного рендеринга объект роутера query
будет пустым. После гидратации Next.js запускает обновление приложения для заполнения query
параметрами маршрутизации.
next build
генерирует HTML-файлы для статически оптимизированных страниц. Например, результатом для pages/about.js
будет:
1 |
|
А если на эту страницу добавить getServerSideProps
, то результат будет таким:
1 |
|
Заметки
- при наличии кастомного
App
оптимизация для страниц без статической генерации отключается - при наличии кастомного
Document
сgetInitialProps
убедитесь в определенииctx.req
перед рендерингом страницы на стороне сервера. Для страниц, которые рендерятся предварительно,ctx.req
будет иметь значениеundefined