Next.js версии 9 был выпущен со встроенной поддержкой TypeScript с нулевой конфигурацией, а также с автоматической статической оптимизацией и маршрутами API. Next.js — это набор инструментов для универсальных, отрисовываемых на сервере (или статически предварительно отрисованных) приложений React.js.
Возможность использовать TypeScript без необходимости использования плагина является улучшением по сравнению с ситуацией, когда базовая поддержка TypeScript была добавлена в Next.js 6 год назад. В дополнение к использованию плагина пользователям также приходилось настраивать параметры и включать плагин, и даже тогда он не интегрировал проверку типов, и типы не были предоставлены ядром Next.js. Улучшенная поддержка включает автоматическую настройку TypeScript и встроенную проверку типов.
Next.js выполняет проверку типов как при разработке, так и при сборке для производства. Если во время разработки возникают ошибки типа, Next.js покажет вам ошибки типа после сохранения файла. Проверка типов происходит в фоновом режиме, и ошибки типов будут передаваться в браузер по мере их появления. Если при выполнении производственной сборки по-прежнему возникают ошибки типа, Next.js завершит сборку с ошибкой, чтобы вы не отправляли сломанный код в производственную среду. За кулисами разработчики перенесли большую часть кодовой базы для Next.js Core на TypeScript, что означает, что теперь программное обеспечение предоставляет типы для всех основных модулей.
Следующее улучшение новой версии — поддержка динамических сегментов маршрута. Эта функция очень востребована с момента первого выпуска Next.js, но до сих пор управление ею осуществлялось с помощью специального серверного API для программного использования Next.js. Однако разработчики обнаружили, что многие пользователи Next.js в конечном итоге использовали собственный сервер для получения настоящей динамической маршрутизации.
Чтобы преодолеть это, Next.js теперь поддерживает создание маршрутов с базовыми именованными параметрами, и пользователи могут использовать каталог / pages, и Next.js автоматически сопоставляет запросы, такие как / post / 1, и будет отображать страницу, определенную в pages / post. /[pid visible.js. Соответствующий сегмент URL-адреса будет передан на вашу страницу в качестве параметра запроса с именем, указанным в [квадратных скобках].
Также была добавлена автоматическая статическая оптимизация, что означает, что разработчики могут использовать как полностью серверный рендеринг, так и статический экспорт своего приложения на постраничной основе. Это было достигнуто за счет того, что Next.js был способен генерировать гибридные приложения, которые содержат как отрисованные сервером, так и статически сгенерированные страницы, не требующие настройки или специальной обработки.
Последнее улучшение — поддержка маршрутов API. До сих пор, если разработчики хотели создать API для веб-сайта, им приходилось реализовывать его отдельно от приложения Next.js. Хотя это было предпочтительнее для сложных приложений, для простых проектов проще иметь возможность делать все в приложении Next.js.
Next.js позволяет реализовать маршруты API, используя каталог / pages / api /. Все файлы, расположенные в этом каталоге, будут автоматически сопоставлены с /api/
С точки зрения производительности Next.js теперь автоматически выполняет предварительную выборку компонентов по мере их появления в области просмотра, что должно улучшить отзывчивость приложений за счет более быстрого перехода к новым страницам. Next.js 9 также по умолчанию будет отображать оптимизированный AMP. что до 50% быстрее, чем традиционный AMP.