
[英]using executeScript with webextension-polyfill & vite in manifest v2
[英]Browser Extension Manifest v3 with webextension-polyfill does not allow browser.browserAction.onClicked (on Chrome)
我正在构建一个浏览器扩展。 我想在用户单击扩展程序图标时触发通知。 当我尝试在 Chrome 中加载扩展程序时,出现此错误:服务工作者注册失败
作为错误的来源,它突出显示了清单中的“background.js”(您可以在下面找到)。 没有提供进一步的信息。 但是,只有当我在 background.ts 中有第一个片段时才会出现问题,如注释所示:
import { browser } from "webextension-polyfill-ts";
// This code prevents the compiled extension to be loaded into Chrome
browser.browserAction.onClicked.addListener(() => {
console.log('browserAction.onClicked');
});
// I also have this code in the file, which works just fine.
browser.runtime.onMessage.addListener(() => {
console.log('browser.runtime.onMessage');
});
(注意这当然是编译成Javascript)
当然,我怀疑是权限问题,但没有发现任何可疑之处。 这是完整的清单:
{
"name": "Test",
"description": "Test",
"version": "0.0.1",
"manifest_version": 3,
"permissions": ["storage", "activeTab", "scripting"],
"background": {
"service_worker": "background.js"
},
"action": {
"default_title": "Click to show an alert"
},
"content_scripts": [
{
"matches": [
"<all_urls>"
],
"js": [
"js/content-script.js"
]
}
],
"content_security_policy": {}
}
有什么想法吗? 谢谢!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.