我的 Chrome 扩展在 Chrome 上运行良好,但是当我使用以下命令在 Safari 上运行它时,我发现 chrome.runtime.sendMessage 返回的结果始终是 Undefined。
xcrun safari-web-extension-converter --app-name MySafariTest dist
以下是我的代码 内容.js:
async test() {
return chrome.runtime.sendMessage({
method: "test"
})
}
let result = await this.test()
// result is always undefined
背景.js:
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
sendResponse("test123")
});
我想知道有没有办法让Chrome的内容脚本和后台脚本在Safari中正常通信?
我自己解决了这个问题。并不是浏览器不支持,而是之前在后台脚本中运行的另一行代码由于浏览器不支持而出错,导致后台脚本加载失败,无法接收消息。