项目已成功创建、构建并启动。但是我添加了一个服务工作人员,但无法正确加载它。
“由于错误,service_worker 脚本无法加载。”
我不知道如何处理这个错误,因为它根本没有提供任何信息。 Safari 开发菜单中访问后台页面进程的选项被禁用,并显示消息“服务工作线程加载失败”。
这是我的“manifest.json”
{
"manifest_version": 3,
"name": "My Extension",
"version": "3.6",
"description": "__MSG_extDesc__",
"default_locale": "en_US",
"options_ui": {
"page": "options.html",
"open_in_tab": false
},
"action": {
"default_icon": "icon.png",
"default_popup": "popup.html"
},
"icons": {
"128" : "icon.png"
},
"permissions": [
"activeTab",
"storage",
"scripting",
"clipboardWrite"
],
"host_permissions": [
"https://ajax.googleapis.com/",
"http://myServer.com/*",
"http://lists.w3.org/",
"https://www.pinterest.com/*"
],
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["content-script.js"]
}
],
"background": {
"service_worker": "background.js",
"type": "module"
}
}
有人对如何调试服务工作人员未加载的原因有任何好的建议/知识吗?该扩展程序在 Google Chrome 中运行时不会出现任何错误或警告。我知道以前曾有人问过类似的问题,但我的情况有所不同。我完全注释掉了 backgroung.js 脚本,但仍然无法加载我的 Service Worker,因此很难查明问题。预先感谢!
我在 chrome 到 Safari 转换后添加了后台脚本。因此,它没有包含在构建阶段中。将其添加到构建阶段解决了我的问题。 参考:https://developer.apple.com/forums/thread/710164