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

Экспорт статической разметки

next export позволяет экспортировать приложение в статический HTML. Такое приложение может запускаться без сервера.

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

next export работает за счет предварительного рендеринга всех страниц в HTML. Для динамических роутов страница может экспортировать функцию getStaticPaths, чтобы Next.js мог определить, какие страницы следует рендерить для данного роута.

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

Для экспорта приложения в статику после разработки приложения следует выполнить команду:

1
next build && next export

Статическая версия приложения будет записана в директорию out.

По умолчанию next export не требует настройки. HTML-файлы генерируются для всех страниц, определенных в директории pages. Для более продвинутых сценариев можно определить параметр exportPathMap в next.config.js для настройки генерируемых страниц.

Заметки

  • с помощью next export мы генерируем HTML-версию приложения. Во время сборки для каждой страницы вызывается функция getStaticProps, результаты выполнения которой передаются компоненту страницы в виде пропов. Вместо getStaticProps можно использовать старый интерфейс getInitialProps, но это имеет некоторые ограничения
  • режим fallback: true в getStaticProps не поддерживается
  • интерфейс маршрутизации не поддерживается
  • getServerSideProps не поддерживается
  • локализованный роутинг не поддерживается
  • дефолтный индикатор загрузки компонента Image не поддерживается (другие настройки loader поддерживаются)

Комментарии