Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

270
Vistas
"No se puede usar la declaración de importación fuera de un módulo" y "Error de sintaxis no detectado: identificador inesperado" al importar una clase

Estoy tratando de importar una clase a mi archivo "main.js". Aquí hay una versión minificada de mi código.

 // "extended.js" file export default class Test { constructor() { this.prop = "Hello" console.log(this.prop) } } // "main.js" file window.onload = function () { import Test from "./extended" new Test() }

El archivo main.js es el archivo JavaScript de interfaz para mi aplicación Express, por lo que se almacena en la carpeta "pública". Cuando carga la página, el error inicial que ocurre es "No se puede usar la declaración de importación fuera de un módulo". He investigado por mi cuenta y varias personas han declarado que el uso de type="module" para la etiqueta de secuencia de comandos "main.js" resolverá el problema. Cuando hice eso, el error cambió a "Error de sintaxis no detectado: identificador inesperado". ¿Hay algo que me falta sobre cómo usar los módulos y las clases de ES6?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Solo puede importar en el nivel superior; no se puede hacer dentro de un bloque. Cambio

 window.onload = function () { import Test from "./extended" new Test() }

a

 import Test from "./extended" window.onload = function () { new Test() };

Sin embargo, también sugeriría no crear clases para efectos secundarios: si solo desea que la clase haga algo, pero no que devuelva algo útil, use una función simple en su lugar.

 export default () => { const prop = "Hello"; console.log(prop); };
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda