Chrome расширение не может console.log OnMessage из содержимого скрипта - PullRequest
0 голосов
/ 30 марта 2020

Я новичок в chrome расширениях и продолжаю зацикливаться на основах, поэтому я явно что-то упускаю. Подобные вопросы были заданы, но ничего не похоже на работу. Я пытаюсь отправить базовое c сообщение в сценарий содержимого, но не могу console.log сообщения.

манифест. json

{
  "name": "Ext_Test",
  "version": "1.0",
  "description": "testing",
  "manifest_version": 2,
  "background": {
      "scripts": ["background.js"],
      "persistent": false
    },
  "content_scripts": [
    {
      "matches": ["http://*/*", "https://*/*"],
      "run_at": "document_start",
      "js": ["content.js"]
    }
  ],
  "browser_action": {
    "default_popup": "popup.html",
    "default_title": "Testing"
  },
  "permissions": [
    "tabs",
    "*://*/*"
  ]
}

фон. js

chrome.tabs.onUpdated.addListener(function(tabId,info, tab) {
  if (info.status == "complete") {
      chrome.tabs.sendMessage(tabId, {action: "test", message: tab.url})
  }
});

содержимое. js

console.log("before method");

chrome.runtime.onMessage.addListener(function(message,sender,sendResponse){
  if(message.action == "test"){
    console.log(message);
  }
});

console.log("after method");

Из Журнал консоли Я вижу «перед методом» и «после метода» , но не вижу сообщения внутри функции.

Обновление: всплывающее окно. html

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Test</title>
  </head>
  <body>
    <script type="module" src="content.js"></script>
  </body>
</html>
...