我是Chrome扩展程序开发的新手。我目前正在制作Chrome扩展程序来解除通知。我希望通过快捷键激活扩展程序一次。
在查看下面的代码之前,我想让人们知道alert
确实显示...但Chrome扩展程序页面显示错误:
“commands.onCommand的事件处理程序出错:TypeError:无法读取未定义的属性'getAll'”
在线上:
chrome.notifications.getAll((items) => {
chrome.notifications
对象在某种程度上是未定义的,所以Chrome似乎认为没有显示当前的通知......这很奇怪,因为确实存在,如图所示。
有人可以通过揭示这种情况来帮忙吗?
manifest.json:
{
"name": "ClearAll",
"version": "1.0",
"description": "Clear notifications!",
"background": {
"scripts": ["background.js"],
"persistent": false
},
"commands": {
"clear": {
"suggested_key":{
"default": "Alt+Shift+S"
},
"description": "Executes clear"
}
},
"manifest_version": 2
}
background.js:
chrome.commands.onCommand.addListener(function(command) {
if (command == 'clear') {
alert("testing");
chrome.notifications.getAll((items) => {
if (items)
for (let key in items)
chrome.notifications.clear(key);
});
}
});
错误:
您需要将notifications
权限添加到清单中
{
"name": "ClearAll",
"permissions": ["notifications"],
.......
}