如何通过嵌套回调对contentScript做出响应

时间:2019-03-27 14:01:33

标签: javascript google-chrome-extension

我想将执行脚本的结果作为响应发送到contentScript,但是显然我在做错什么。 Chrome不断抛出错误“ Unchecked runtime.lastError:消息端口在收到响应之前已关闭。”

Web Deployment Agent Service

1 个答案:

答案 0 :(得分:0)

您必须从听众返回true,例如:

chrome.runtime.onMessage.addListener(
(request, sender, sendResponse) => {
    chrome.tabs.create({url: "example.com"}, tab => {
        chrome.tabs.executeScript(tab.id, {code: 'var x = 10; x'}, function (result) {
            sendResponse(result);    
        });
    });
    return true;
});