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

408
Vistas
Bibliotecas Chrome Extension Manifest V3 en segundo plano

Estoy en proceso de actualizar mi extensión de Chrome del manifiesto v2 a v3. Aquí está el viejo manifiesto:

Manifiesto V2:

 { "manifest_version": 2, "name": "Legacy Search Assistant", "version": "0.1.1", "content_scripts": [ { "matches": [ "https://*.legacysite.io/*","*://*/api*" ], "js": ["jquery-3.6.0.min.js","content.js"] } ], "options_page": "options.html", "background": { "scripts": ["jsencrypt.min.js", "jquery-3.6.0.min.js", "background.js"] }, "browser_action": { "default_icon": "icon.png", "default_popup": "popup.html", "default_title": "Legacy Search" }, "permissions": [ "storage" ] }

Dado que jsencrypt.min.js ya estaba cargado en el manifiesto, pude llamar a sus funciones en background.js, pero ahora que he ido al manifiesto v3, tengo problemas para que el trabajador del servicio acceda a esta biblioteca.

Por ejemplo, cuando hago esta llamada en background.js:

 importScripts("/scripts/jsencrypt.min.js");

Lanza el siguiente error:

 Error handling response: Error: Failed to execute 'importScripts' on 'WorkerGlobalScope': The script at 'chrome-extension://<extension ID>/scripts/jsencrypt.min.js' failed to load.

Si hago clic en el enlace del error, me lleva directamente a la biblioteca que quiero cargar.

Ya probé todas las correcciones en esta respuesta . Por favor ayuda si puedes.

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

0

importScripts() es una forma antigua de cargar scripts en los trabajadores.

Ahora podemos usar módulos ES más modernos en su lugar.

A partir de Chrome 91, podemos usar módulos de JavaScript en trabajadores de servicios.

Simplemente establezca la propiedad de tipo en el módulo en el manifiesto.

 { "manifest_version": 3, "background": { "service_worker": "background.js", "type": "module" }

Esto carga el trabajador de servicio como un módulo ES, lo que le permite usar la palabra clave de importación en el trabajador de servicio para importar otros módulos. Ex-

 // background.js import * as module from './scripts/jsencrypt.min.js';

Pero asegúrese de que el script que está importando, como ./scripts/jsencrypt.min.js en este caso, haya exportado el código requerido que desea usar.

Más información sobre los módulos ES

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