Maison > interface Web > js tutoriel > Comment puis-je importer avec succès des modules ES6 dans les scripts de contenu de mon extension Chrome ?

Comment puis-je importer avec succès des modules ES6 dans les scripts de contenu de mon extension Chrome ?

Linda Hamilton
Libérer: 2024-12-23 09:23:15
original
696 Les gens l'ont consulté

How Can I Successfully Import ES6 Modules into My Chrome Extension's Content Scripts?

Importation de modules ES6 dans les scripts de contenu d'extension Chrome

Problème : Dans Chrome 63, importation de modules ES6 à l'aide de la syntaxe d'importation/exportation dans un contenu le script donne la syntaxe erreurs.

Solution :

Les extensions Chrome prennent en charge les modules ES6 via une fonction import() dynamique asynchrone :

(async () => {
  const src = chrome.runtime.getURL("your/content_main.js");
  const contentMain = await import(src);
  contentMain.main();
})();
Copier après la connexion

Cependant, cette méthode a limitations :

  • Il peut être bloqué par le service du site worker.
  • La déclaration des scripts importés dans les ressources accessibles au Web du manifeste est requise.

Pour les scripts non-modules, pensez à :

  • Utiliser un script non-module normal -module script.
  • Ajout de son nom à "js" dans "content_scripts" avant votre contenu principal script.
  • Utilisation directe des variables/fonctions globales.

Informations supplémentaires :

  • [Comment utiliser ES6 « import " avec Chrome Extension](https://stackoverflow.com/a/50132415)
  • [Exemple de travail d'importation ES6 dans Chrome Extension](https://github.com/browsers-toolbox/es-import-in-extension)
  • [chrome.runtime.getURL](https://developer.chrome.com/extensions/runtime #method-getURL)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal