我正在为 safari 构建一个扩展。我意识到当我按住链接时,它会显示网站的预览,并且会导致 background.js 中出现错误。 预览是这样的。
当我用网络检查器检查background.js时,它说:
无法访问页面内容。扩展清单必须请求访问相应主机的权限,或者通过用户手势获得“activeTab”权限。
[错误]未处理的承诺拒绝:错误:无法访问页面内容。扩展清单必须请求访问相应主机的权限,或者通过用户手势获得“activeTab”权限。
由于这些错误,即使我选择“在新选项卡中打开”,background.js 中的代码也不再运行。我该如何解决这些错误?
我在清单中有
activeTab
权限,所以我不知道为什么它会返回此错误。
我无法解决错误本身,但只需在background.js中添加以下代码即可运行background.js
browser.tabs.onCreated.addListener(async (tab) => {
console.log("tab created");
});
当用户按下链接并在新选项卡中打开时,将调用此代码。