chrome插件调试

chrome插件调试
代长亚[TOC]
重要提示: Chrome将删除所有平台上对Chrome应用的支持。Chrome浏览器和Chrome网上应用店将继续支持扩展程序。 阅读公告, 并了解有关迁移应用程序的更多信息 。
调试扩展
扩展程序可以利用 Chrome DevTools为网页提供的相同调试 优势 ,但是它们具有独特的行为属性。成为主扩展调试器需要了解以下行为,扩展组件如何相互配合以及在哪里处理错误。本教程使开发人员对调试扩展有基本的了解。
找到日志
扩展由许多不同的组件组成,这些组件有各自的职责。在此处下载损坏的扩展程序 , 以开始查找不同扩展程序组件的错误日志。
后台脚本
导航至chrome扩展管理页面, chrome://extensions
并确保已启用开发人员模式。单击加载未打包的按钮,然后选择损坏的扩展目录。扩展名加载后,它应具有三个按钮: Details,Remove和Errors in red letter。
单击错误按钮以查看错误日志。扩展程序系统在后台脚本中发现了一个问题。
Uncaught TypeError: Cannot read property ‘addListener’ of undefined
此外,通过选择检查视图旁边的蓝色链接,可以打开Chrome DevTools面板以显示背景脚本 。
返回代码。
1 | chrome.runtime.oninstalled.addListener(function() { |
let changeColor = document.getElementById(‘changeColor’);
chrome.storage.sync.get(‘color’, function(data) {
changeColor.style.backgroundColor = data.color;
changeColor.setAttribute(‘value’, data.color);
});
changeColor.onclick = function(element) {
let color = element.target.value;
chrome.tabs.query({active: true, currentWindow: true}, function(tabs) {
chrome.tabs.executeScript(
tabs[0].id,
{code: ‘document.body.style.backgroundColor = color;’});
});
};
1 | 更新代码,单击右上角的**全部清除**按钮,然后重新加载扩展。 |
{code: ‘document.body.style.backgroundColor = “‘ + color + ‘“;’});
1 |
|
{
“name”: “Broken Background Color”,
“version”: “1.0”,
“description”: “Fix an Extension!”,
“permissions”: [
“activeTab”,
“declarativeContent”,
“storage”
],
“options_page”: “options.html”,
“background”: {
“scripts”: [“background.js”],
“persistent”: false
},
“page_action”: {
“default_popup”: “popup.html”,
“default_icon”: {
“16”: “images/get_started16.png”,
“32”: “images/get_started32.png”,
“48”: “images/get_started48.png”,
“128”: “images/get_started128.png”
}
},
“icons”: {
“16”: “images/get_started16.png”,
“32”: “images/get_started32.png”,
“48”: “images/get_started48.png”,
“128”: “images/get_started128.png”
},
“manifest_version”: 2
}
```