Простая проверка типов для next.config.js
Это не столько настоящая статья, сколько переиздание части документации Next.js, так как я считаю важным, чтобы она была опубликована. Что касается использования типов для next.config.js, то здесь нет реальной официальной поддержки со стороны команды Next.js, поскольку использование Typescript-файла для этой конфигурации невозможно без некоторых хаков.
Начиная с версии 10.2.3, в документации доступен следующий фрагмент кода, позволяющий использовать простой вариант проверки типов. Обратите внимание, что мы используем Typescript, но конфигурационный файл не передается сборщиком проекта. Используемая функция - это тег «@type» из JSDoc для импорта типов в файл JS.
// Add the following line at the top of the file:
// @ts-check
// Then for the config itself, import the types
// via '@type'-tag.
/**
* @type {import('next/dist/next-server/server/config').NextConfig}
**/
const nextConfig = {
/* config options here */
}
// End of file.
module.exports = nextConfig
Конечно, вы также можете настроить настраиваемую конфигурацию Typescript и шаг препроцессора, чтобы самостоятельно перенести конфигурацию в Javascript. Но на данный момент я думаю, что это не стоит усилий, поскольку поставщики подключаемых модулей не оказывают существенной поддержки Typescript. Итак, в конце концов, вы получаете типы для своей базовой конфигурации, но для всех остальных плагинов без типов все равно потребуется «любой».