我有一个内容脚本,可以将消息发送到后台脚本:
chrome.runtime.sendMessage({site: "stackoverflow", options: {
url: url
}}, function(res) {
console.log(res);
});
并且我的后台脚本具有侦听器:
chrome.runtime.onMessage.addListener(
function(request, sender, sendResponse) {
if (request.site == "stackoverflow") {
fetch(request.options.url)
.then( (res) => {
return res.text()
})
.then( (document_text) => {
sendResponse({"one": "1"})
})
}
//sendResponse({"one": "1"})
});
现在,在抓取中,当我尝试将响应发送回时,我在内容脚本中得到了undefined
。如果我在提取之前使用它:
chrome.runtime.onMessage.addListener(
//...
.then( (document_text) => {
//sendResponse({"one": "1"})
})
}
sendResponse({"one": "1"})
});
我的内容脚本日志{"one": "1"}
。
我为什么会遇到这个问题?