"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo resolver el error \"Exportación inesperada de token\" en los módulos ES6?

¿Cómo resolver el error \"Exportación inesperada de token\" en los módulos ES6?

Publicado el 2024-11-06
Navegar:847

How to Resolve \

Exportación de token inesperada: adopción del soporte del módulo ES6

Encontrar el error "Exportación de token inesperada" al intentar ejecutar el código ES6 puede ser desconcertante asunto. Este error surge cuando el entorno de ejecución no es compatible con la sintaxis del módulo EcmaScript (ESM) que estás utilizando.

Comprensión de ESM:

ESM, a menudo denominado " ES6 Modules", introdujo un sistema de módulos para JavaScript, que permite la encapsulación de código y una gestión de dependencias más sencilla. Utiliza la palabra clave export para definir módulos, lo que hace que la organización del código sea más explícita.

Soporte para ESM:

Las versiones de NodeJS inferiores a v14.13.0 no eran compatibles con ESM y en su lugar dependían de en módulos CommonJS, que utilizaban la sintaxis de la propiedad module.exports. Sin embargo, las versiones más nuevas de NodeJS (v14.13.0 y superiores) admiten ESM, siempre que esté habilitado explícitamente.

Soluciones:

Habilite ESM en NodeJS (v14 .13.0):

Edite el archivo package.json de su proyecto y establezca la propiedad "tipo" en "módulo":

{
  ...
  "type": "module",
  ...
}

Refactorice con la sintaxis del módulo CommonJS:

Para versiones anteriores de NodeJS, refactorice su código para usar la sintaxis del módulo CommonJS:

// Example ES6 module
export class MyClass {
  constructor() {
    console.log("es6");
  }
}

// CommonJS module equivalent
module.exports = class MyClass {
  constructor() {
    console.log("commonJs");
  }
};

Utilice TypeScript y ts-node:

Considere usar TypeScript junto con los paquetes npm ts-node o ts-node-dev. TypeScript se transpila a JavaScript en el momento de la compilación, lo que hace que el código ES6 sea compatible con versiones anteriores de NodeJS.

Transpile ESM a CommonJS:

Utilice esbuild (instalado a través de npm) para transpilar su ES6 JavaScript al formato CommonJS, lo que le permite ejecutarse en entornos sin soporte nativo de ESM.

Declaración de liberación Este artículo se reimprime en: 1729172539 Si hay alguna infracción, comuníquese con [email protected] para eliminarla.
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3