Google chrome extension 在扩展内部页面和后台脚本之间传递chrome扩展消息

Google chrome extension 在扩展内部页面和后台脚本之间传递chrome扩展消息,google-chrome-extension,Google Chrome Extension,我使用扩展名internalpagechrome extension://请求权限,并将结果发送到后台 在扩展内部页面中: btn.addEventListener('click', function(event) { event.preventDefault(); chrome.permissions.request({ permissions: permissions, origins: origin }, function(grant

我使用扩展名internalpagechrome extension://请求权限,并将结果发送到后台

在扩展内部页面中:

btn.addEventListener('click', function(event) {
    event.preventDefault();
    chrome.permissions.request({
        permissions: permissions,
        origins: origin
    }, function(granted) {
    chrome.runtime.sendMessage({route: '/permissionRequest', data: {command: 'Response', result: granted}}, function(){});
    });
}, false);
看起来不错。但当我点击按钮时,它会打开一个新的标签,url就像chrome一样-extension://.../authorizehtml?undefined. 这条消息将被发送出去

我不知道为什么会开这样的新标签

我发现,如果我将密钥名“data”更改为其他名称,它将永远不会打开新的选项卡。官方文档不会谈论它


我对此一无所知。

在此上下文中btn是什么元素?是的,btn在内部页面中。一个按钮允许用户单击并触发权限请求,但它是什么?两者都不起作用。