Chrome扩展程序将数据从background.js传递到新标签页

在我的chrome扩展程序中,我想显示一个页面,其中包含用户的一些使用情况统计信息。我一直在尝试通过在background.js中创建一个新标签来显示HTML页面来解决此问题:

chrome.tabs.create({
    url: '/results.html',active: true
});

results.html如下所示:

<!DOCTYPE html>
<html lang='en'>
<head>
  <script src='js/charts.js'></script>
</head>
<body>
  <canvas id='myChart' style='height:400px; max-width:800px; background-color:red;'></canvas>
  </body>
  <script src='js/results.js'></script>
</html>

问题在于,然后我需要将实际使用情况数据从background.js页面传递到这个新的results.html页面。我唯一想到的就是添加另一个附加到results.html页面的内容脚本。

"content_scripts": [
    {
        "matches": [
            "*://*.results.html"
        ],"js": ["js/results_content.js"],"run_at": "document_idle"
    }
]

这似乎不起作用,否则,我可以让后台页面通过results_content.js脚本发送数据并显示图表。

我能想到的唯一另一个想法是,打开一个新标签至obscurewebsite.com并拥有一个内容脚本,该脚本执行类似document.body.innerHTML = ""的操作,并仅使用javascript来重建我的页面。我不喜欢这种解决方案。

是否可以通过chrome.tabs引用传递信息?还是另一种传递数据的方式?任何帮助表示赞赏。

wgzh107109 回答:Chrome扩展程序将数据从background.js传递到新标签页

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3141914.html

大家都在问