Erreurs de syntaxe verbatimModuleSyntax dans IronPDF for Node.js
Lorsque vous utilisez IronPDF for Node.js dans un projet TypeScript, l'option du compilateur verbatimModuleSyntax contrôle comment les déclarations import et export sont émises, et cela peut causer des erreurs de construction lorsqu'il y a un conflit avec votre système de module.
Comment l'option se comporte
Défini sur false (le choix le plus courant) : TypeScript réécrit les déclarations d'importation et d'exportation pour correspondre au système de module cible. Avec un objectif CommonJS, il convertit les importations de style ESM (import ... de '...') into require() appels ; avec un objectif ESNext, il conserve la syntaxe ESM.
Défini sur true : TypeScript préserve exactement la syntaxe d'importation et d'exportation telle qu'écrite. La syntaxe ESM reste ESM indépendamment de l'objectif, ce qui échoue lorsque le système de module ne la prend pas en charge.
Erreurs quand elle est activée
Avec "verbatimModuleSyntax": true, une construction CommonJS peut échouer avec :
A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled.
ESM syntax is not allowed in a CommonJS module when 'verbatimModuleSyntax' is enabled.
La première se produit parce que CommonJS ne supporte pas un export de niveau supérieur ; la seconde se produit lorsque la syntaxe ESM reste non transformée pour un module CommonJS.
Recommandation
Pour la plupart des projets, gardez l'option désactivée pour que TypeScript ajuste la syntaxe du module pour vous :
{
"compilerOptions": {
"verbatimModuleSyntax": false
}
}
Si vous avez besoin d'une préservation stricte de la syntaxe pour un bundler ou un environnement spécifique, réglez-le sur true seulement lorsque votre système de module supporte pleinement la syntaxe utilisée par votre source.

