哪里可以从Chrome扩展程序中的background.js中读取控制台消息?


193

我刚开始使用Google 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"
  ]
}

background.js:

alert("here");
console.log("Hello, world!")

加载扩展程序时,出现警报,但没有任何日志记录到控制台。我究竟做错了什么?



如果其他选项卡上的突出显示栏位于
上方,

Answers:


374

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

造访chrome://extensions/
您也可以右键点击扩展程序图标,然后点击“管理扩展程序”。

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

新界面:

在此处输入图片说明 在此处输入图片说明

旧版用户界面:

图片


@RobW,我没有三角形按钮来扩展扩展名,也看不到任何活动视图。这个答案不再是最新版本的Chrome的解决方案,还是我错过了什么?
gwg 2014年

1
@ggundersen我更新了图片。三角形已被删除,激活开发人员模式后,该步骤将自动发生。
罗布W

那如何调试内容脚本呢?
SuperUberDuper '17

1
@SuperUberDuper通过运行内容脚本的选项卡中的devtools。
罗布W

13

我遇到了同样的问题,在我的情况下,Chrome开发者工具的控制台标签中的日志记录设置为“全部隐藏”。我什至没有意识到这是一个选择,我不记得将其关闭

chrome开发者工具的控制台标签中的设置屏幕截图


7

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

在此处输入图片说明


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"
  }

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


9
1)这不能回答问题,2)这是完全错误的;内容脚本将消息记录到注入页面的控制台中,即实际的浏览器选项卡。我想在您的代码中,popup.js已在中重用了popup.html,因此该副本的输出将转到您提到的位置。但这完全是误导。
2014年

2
这个答案可以帮助我检查作为弹出窗口运行的chrome扩展日志
RashFlash 2015年

1

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

在此处输入图片说明

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


1

如果要从弹出页面中读取打印到控制台的消息,可以单击扩展图标以打开弹出页面,然后在弹出页面上的任意位置上单击鼠标右键,将显示一个下拉菜单,我们只需单击“检查”菜单即可打开开发人员工具。请注意,弹出页面必须一直打开。如果关闭(通过window.close()),则开发人员工具也将关闭。


0

我也有这个问题。好像我的网页没有更新到新保存的脚本。这可以通过在chrome浏览器中按Ctrl+刷新(或Ctrl+ F5)来解决。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.