如何在电子中与chrome扩展背景页进行通信



由于电子不实现chrome.runtime.onMessageExternal。我们如何在主进程或渲染器进程中与chrome扩展后台页面进行通信?

实际上,扩展后台页面就是webContents之一。

  1. 使用webContents.getAllWebContents(),您可以找到所有的webContents
  2. 并用CCD_ 3进行滤波
  3. 然后加载预加载文件

您可以在预加载文件中执行任何操作。

webContents.getAllWebContents().forEach((wc) => {
if (wc.getType() === 'backgroundPage') {
const preloadPath = path.join(__dirname, 'preloadForExtension.js');
if (!wc.session.getPreloads().includes(preloadPath)) {
wc.session.setPreloads(wc.session.getPreloads().concat(preloadPath));
}
}
});

最新更新