从Chrome扩展程序中的background.js读取控制台消息的位置?

gra*_*ved 176 debugging console google-chrome-extension google-chrome-devtools

我刚开始使用谷歌Chrome扩展程序,我似乎无法从我的后台js登录到控制台.发生错误时(例如,由于语法错误),我也找不到任何错误消息.

我的清单文件:

{
  "name": "My First Extension",
  "version": "1.0",
  "manifest_version": 2,
  "description": "The first extension that I made.",
  "browser_action": {
    "default_icon": "icon.png"
  },
  "background": {
    "scripts": ["background.js"]
  },
  "permissions": [
    "pageCapture",
    "tabs"
  ]
}
Run Code Online (Sandbox Code Playgroud)

background.js:

alert("here");
console.log("Hello, world!")
Run Code Online (Sandbox Code Playgroud)

当我加载扩展时,警报出现但我没有看到任何记录到控制台.我究竟做错了什么?

Rob*_*b W 350

你看错了地方.记录的控制台消息不会出现在网页中,而是出现在(不可见的)背景页面中.要在控制台中查看这些消息,请按照下列步骤操作:

访问chrome://extensions/.
您也可以右键单击扩展图标,然后单击"管理扩展".

  1. 启用开发者模式
  2. 单击背景页面的链接(在"检查视图"中).
  3. 为此页面打开开发人员控制台.

新UI:

在此输入图像描述 在此输入图像描述

旧UI:

图片


Mic*_*iel 12

我遇到了同样的问题,在我的情况下,Chrome Developer工具中的控制台选项卡中的日志记录设置为"全部隐藏".我甚至没有意识到这是一个选择,我不记得把它关掉

chrome dev工具中控制台选项卡中设置的屏幕截图


diE*_*cho 5

另外

如果要content_scriptmanifest.json中查看js文件(未设置“ background”属性时)

"content_scripts": [{
    "matches": ["<all_urls>"],
    "js": ["popup.js"],
  }]

"browser_action": {
    "default_icon": "icon_32.png",
    "default_popup": "popup.html"
  }
Run Code Online (Sandbox Code Playgroud)

然后右键单击扩展程序图标,然后单击“ 检查”弹出窗口,随即打开打开popup.html的“开发人员”窗口,您会看到控制台选项卡。

  • 1)这不能回答问题,2)这是完全错误的;内容脚本将消息记录到注入页面的控制台中,即实际的浏览器选项卡。我想在您的代码中,在popup.html中重用了popup.js,因此该副本的输出将转到您提到的位置。但这完全是误导。 (8认同)
  • 这个答案可以帮助我检查作为弹出窗口运行的chrome扩展日志 (2认同)

rog*_*ack 5

对于希望查看其chrome扩展程序“内容脚本”调试控制台的关注者,可以通过执行常规的“显示开发人员控制台”然后使用下拉箭头选择其“ javascript环境”来使用它其方法等

在此处输入图片说明


Big*_*ist 5

与 Michiel 的答案类似,我也有一个有趣的控制台配置:我不记得设置的过滤器:

在此输入图像描述

清除过滤器后,我看到了消息。