【问题标题】:console.log - Chrome extension doesn't execute console.log, it just skips console.log [duplicate]console.log - Chrome 扩展不执行 console.log,它只是跳过 console.log [重复]
【发布时间】:2016-11-02 00:23:21
【问题描述】:

我的 Chrome 扩展程序似乎没有以任何方式执行 console.log。它会跳过它。

console.log 工作:我可以打开控制台,输入console.log('test'); 并且它工作。它适用于其他脚本,即本地加载到 HTML 页面中的 JS 脚本,但不适用于我的扩展。

我的background.js 在下面通过manifest.json 运行。它执行alert(),但不执行console.log

chrome.browserAction.onClicked.addListener(function(tab) {
  chrome.tabs.executeScript(null, { file: "jquery-3.0.0.min.js" }, function() {

      console.log('----');

      alert('Hello!);

  });
});

我试过了:

  • delete console.logdelete window.consoledelete window[console] 按照 Restoring console.log()JavaScript console log in Magento 的建议,但没有成功。
  • 在隐身模式下加载了扩展,没有加载其他扩展,但没有成功。
  • background.js 更新为仅包含一行 - console.log('----'); - 仍然无法正常工作。
  • 确保控制台报告“全部”,而不仅仅是错误。

我的manifest.json

{

  "manifest_version": 2,

  "name": "My Chrome Extension",
  "description": "This extension will you save time.",
  "version": "1.0",

  "permissions": [
    "http://*/*",
    "https://*/*",
    "tabs"
  ],

  "browser_action": {
    "name": "Click to start the extension"
  },

  "background": {
    "scripts": ["background.js"]
  }

}

【问题讨论】:

  • 后台页面、弹出页面、网页都是独立的窗口,有自己的控制台。启用 [x] 开发人员模式后,可以在 chrome://extensions 页面上打开后台页面控制台。我相信这个问题被问过很多次了。
  • @wOxxOm “我相信这个问题被问过很多次了。”你没有错。
  • 实际上问题出在我的 background.js 中没有运行executeScipts。通过这样做,我在活动窗口控制台中包含了控制台日志。

标签: google-chrome-extension console.log


【解决方案1】:

您的扩展程序的控制台位于一个单独的窗口中。您可以通过以下方式检查您的console.log() 消息:

  1. 转到chrome://extension

  2. 启用开发者模式

  3. 点击“Inspect views”行中的“background page”链接

  4. 您的扩展程序的开发者控制台将在此处打开。

致谢:Where to read console messages from background.js in a Chrome extension?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-29
    • 1970-01-01
    • 2021-07-24
    • 1970-01-01
    • 2018-02-14
    • 2019-03-19
    • 1970-01-01
    • 2013-05-26
    相关资源
    最近更新 更多