我正在尝试构建我的第一个Chrome扩展程序,但我发现调试有问题。
我能够console.log()
但是在Developer Tools控制台(我正在处理 background.js ;没有用户界面)中没有关于语法错误的报告。
这是正常的吗?或者它取决于我正在创建扩展名的页面的某些设置? (www.google.com)
我读过可能会在某处设置window.onerror
,但我无法找到它。我试过了
window.onerror = null;
在 background.js 的开头,但没有任何改变。
你会怎样做才能收回错误?
更新(添加代码)
这是 manifest.json :
{
"name": "Name",
"description": "Description",
"version": "0.1",
"manifest_version": 2,
"background": {
"persistent": false,
"scripts": ["js/background.js"]
},
"permissions" : [
"tabs",
"*://www.google.com/*",
"*://www.google.de/*"
],
"commands": {
"changeSearch": {
"suggested_key": {
"default": "Ctrl+Shift+A",
"mac": "Command+Shift+A"
},
"description": "Change."
}
}
}
background.js 的开头如下:
console.log("Start");
chrome.commands.onCommand.addListener(function(command) {
consTYPOTYPOTYPOTYPOTYPOTYPOle.log("catched");
...
我刚刚发现,如果TYPO是function(command)
代码的otuside,如果我在第1行或第2行有TYPO,则会抛出错误。
第3行是完全沉默的。没错。它只是不起作用。
这对我来说很奇怪!
答案 0 :(得分:0)
问题是一个相互冲突的扩展,超越了我的。
尝试禁用所有扩展,然后从我的开始重新启用它们,解决了这个问题。
可能我认为它对冲突的扩展(在之后启用)具有更高的优先级。