Vérification de type simple pour next.config.js
Il ne s'agit pas tant d'un véritable article que d'une re-publication d'une partie de la documentation de Next.js, car je pense qu'il est important qu'il soit partagé. En ce qui concerne l'utilisation des types pour next.config.js, il n'y a pas de véritable support officiel de la part de l'équipe Next.js car l'utilisation d'un fichier Typescript pour cette configuration n'est pas possible sans quelques hacks.
Depuis la version 10.2.3, l'extrait de code suivant est disponible dans la documentation pour permettre une variante simple de la vérification de type. Notez que nous utilisons Typescript, mais le fichier de configuration ne sera pas transpilé par le bundler du projet. La fonctionnalité utilisée est la balise "@type" de JSDoc pour importer des types dans un fichier 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
Bien sûr, vous pouvez également configurer une configuration Typescript personnalisée et une étape de préprocesseur pour transpiler vous-même la configuration en Javascript. Mais pour l'instant, je pense que cela n'en vaut pas la peine, car il n'y a pas de support substantiel pour Typescript par les fournisseurs de plugins. Donc, après tout, vous vous retrouvez avec des types pour votre configuration de base, mais vous auriez toujours besoin de « any » pour tous les autres plugins sans types pour le moment.