Errores de verbatimModuleSyntax en IronPDF for Node.js

This article was translated from English: Does it need improvement?
Translated
View the article in English

Cuando usas IronPDF for Node.js en un proyecto TypeScript, la opción del compilador verbatimModuleSyntax controla cómo se emiten las declaraciones import y export, y puede causar errores de compilación cuando entra en conflicto con tu sistema de módulos.

Cómo se comporta la opción

Establecer en false (la opción común): TypeScript reescribe las declaraciones de importación y exportación para coincidir con el sistema de módulos objetivo. Con un objetivo CommonJS convierte importaciones al estilo ESM (import... de '...') into `llamadas de require(); con un objetivo ESNext mantiene la sintaxis ESM.

Establecer en true: TypeScript preserva la sintaxis de importación y exportación exactamente como está escrita. La sintaxis ESM sigue siendo ESM independientemente del objetivo, lo cual falla cuando el sistema de módulos no la soporta.

Errores cuando está habilitado

Con "verbatimModuleSyntax": true, una compilación CommonJS puede fallar con:

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 primera ocurre porque CommonJS no soporta un export de nivel superior; el segundo ocurre cuando la sintaxis ESM queda sin transformar para un módulo CommonJS.

Recomendación

Para la mayoría de los proyectos, mantenga la opción deshabilitada para que TypeScript ajuste la sintaxis del módulo por usted:

{
  "compilerOptions": {
    "verbatimModuleSyntax": false
  }
}

Si necesitas preservar estrictamente la sintaxis para un bundler o entorno específico, establécelo en true solo cuando tu sistema de módulos soporte completamente la sintaxis que usa tu fuente.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más
¿Listo para empezar?
Versión: 2026.6 recién publicada
Still Scrolling Icon

¿Aún desplazándote?

¿Quieres una prueba rápida?
ejecutar una muestra Mira cómo tu HTML se convierte en PDF.