2016-07-20 1 views
1

Je suis en train d'utiliser mon extension Chrome sur Microsoft Edge pour l'adapter, mais je ne peux pas construire le menu contextuel, car dans le script de mon pop-up, certaines variables semblent ne pas exister:Microsoft Edge popup extension comment obtenir la page d'arrière-plan?

var bg = chrome.extension.getBackgroundPage(); 

Cette ligne ISN ne fonctionne pas, il est supposé accéder aux données des scripts de contenu. J'ai trouvé des gars disant que browser.extension.getBackgroundPage() doit être utilisé pour le remplacer, mais ça ne marche pas.

Par que dois-je remplacer cette ligne?

+0

Avez-vous déjà attribué 'chrome = browser'? Cette API est [actuellement documentée] (https://developer.microsoft.com/en-us/microsoft-edge/platform/documentation/extensions/api-support/supported-APIs/#extension) comme étant * prise en charge * dans Microsoft Bord. – Sampson

+0

Non, mais je l'ai remplacé par browser.extension.getBackgroundPage() comme indiqué dans la documentation et cela ne fonctionne pas. Comment puis-je afficher mes variables? Cela m'aiderait à déboguer, et console.log ne fonctionne pas dans les scripts de fond et de contenu. – Nucktrooper

Répondre

3
  1. Depuis que Microsoft Edge utilise l'espace de noms browser.*, vous devez utiliser browser.extension.getBackgroundPage() à la place.

  2. pour le script d'arrière-plan de débogage et le script de contenu, voir Debugging extensions pour plus de détails

  3. Pour le débogage des scripts popup, il semble qu'il n'y ait pas d'entrée visible. Une solution de contournement serait d'ouvrir manuellement cette page dans Microsoft bord via tapant l'URL popup, quelque chose comme ms-browser-extension://[Extension_Id]/html/popup.html

+0

Passé beaucoup de temps à essayer de voir la sortie du script de contenu avec les outils de débogage. On peut dire qu'elle est également mis sur écoute, seule façon de le voir est de regarder la page: ms-navigateur-extension: // [EXTENSION_ID] /_generated_background_page.html – Nucktrooper

+0

@Nucktrooper, script de contenu sont injectés dans la page Web, il est dans f12 de la page de l'outil ; La page d'arrière-plan se trouve dans le contexte de l'extension, vous devez l'afficher via "Inspecter la page d'arrière-plan". Que voulez-vous dire "generated_background_page"? Dans –

+0

"Vérifiez la page d'arrière-plan" il n'y a rien dans la console, mais quand j'ouvre ms-navigateur-extension: // [EXTENSION_ID] /_generated_background_page.html journaux à partir de scripts d'arrière-plan sont affichés, ms-navigateur-extension: // [ Extension_Id] /html/popup.html m'a permis de voir les journaux du script de contenu. – Nucktrooper

0

Il y a un logiciel nommé « kit d'outils » fourni par Microsoft pour convertir votre extension chrome existant à l'extension Microsoft en comblant les API Chrome. Cet outil permet de supprimer les erreurs de la version convertible et met également en évidence l'erreur de syntaxe qui n'est pas autorisée dans l'extension edge.