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

111
Vistas
Cómo importar scripts de OldSchool a la aplicación ES6

Los scripts antiguos diseñados para usarse directamente con la etiqueta < script >, usan varias variables globales y algunas características que no funcionan dentro de ES6 con el modo estricto predeterminado.

Por ejemplo:

 Uncaught TypeError: Failed to execute 'importScripts' on 'WorkerGlobalScope': Module scripts don't support importScripts().

¿Cómo podemos hipotéticamente hacer algo como esto?

 var coolModule = magicImport( 'oldstyle_library.js' )

O mejor aún:

 var coolIsolatedModule = magicImportWrapContain( 'oldstyle_library.js' )

El resultado deseado es alguna forma de importar ES5 o javascript de estilo antiguo en un objeto perfectamente aislado, como el módulo de importación ES6. Las soluciones salvajes y extrañas son bienvenidas.

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

0

Cree un elemento DOM de secuencia de comandos, configure el script src, insértelo en el cuerpo. haz lo siguiente en el evento 'onload'. Es como

 const script = document.createElement("script"); script.src = 'oldstyle_library.js'; script.onload = function() { //get the library exports here }; document.body.appendChild(script);

pero es asíncrono. Puede usar Promise para implementar la función magicImport.

Un implemento por ejemplo:

 function magicImport(src, globalVar) { return new Promise(resolve => { let exports = window[globalVar]; if(exports) { resolve(exports); } else { const script = document.createElement("script"); script.src = src; script.onload = function() { resolve(window[globalVar]); }; document.body.appendChild(script); } }); } magicImport("jquery.js", "jQuery").then(jQuery => { //do what you want with jQuery }); // or use async/await const jQuery = await magicImport("jquery.js", "jQuery"); //do what you want with jQuery
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