我刚开始使用谷歌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!")

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


当前回答

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

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

其他回答

如果我们想从弹出式页面读取打印到控制台的消息,我们可以单击扩展图标打开弹出式页面,然后右键单击弹出式页面的任何地方,下拉菜单将显示,我们只需单击“检查”菜单打开开发人员工具。注意,弹出页面必须一直打开。如果它被关闭(通过window.close()),开发人员工具也将被关闭。

另一个答案(s)工作(s)为background.js,但如果你正在寻找控制台。从弹出的日志,然后你可以尝试:

var bkg = chrome.extension.getBackgroundPage();
bkg.console.log('foo');

我使用cra进行开发,这对我来说很有效。

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

你找错地方了。这些控制台消息不会出现在web页面中,而是出现在不可见的后台页面(ManifestV2)或service worker (ManifestV3)中。

要查看正确的控制台,打开devtools后台脚本的上下文:

访问chrome://extensions/或右键单击扩展图标并选择“管理扩展”。 启用开发人员模式 单击名为后台页面(ManifestV2)或service worker (ManifestV3)的链接。

ManifestV2扩展的截图:

ManifestV3扩展的截图:

对于那些为Firefox开发扩展的人:

TL;DR版本:您需要使用Ctrl+Shift+J来调用浏览器控制台窗口,并单击右上角的设置图标,并确保选中“显示内容消息”。

来自相关stackoverflow问题的更长的解释:我如何在Firefox web扩展中看到后台脚本的console.log输出?