首页 > 解决方案 > 在 Electron 中,我可以从主进程访问渲染器进程中的控制台吗

问题描述

我正在开发一个电子应用程序,我不会控制渲染过程的内容。对于应用程序的这一部分,我只是在应用程序之外浏览远程 URL。

我希望能够将控制台从该渲染进程流式传输到主进程,并检测某些消息的存在并在主进程中对它们采取行动。

由于我不控制渲染过程,我无法使用 IPC 发送消息。如果我使用环境变量启动 Electron ELECTRON_ENABLE_LOGGING,我可以将渲染过程流式传输,但只能传输到终端。我不知道如何在主电子过程中访问该数据。这有可能吗?

标签: consoleelectron

解决方案


console-message最好的方法是在 webContents中使用事件。(https://electronjs.org/docs/api/web-contents#event-console-message

它允许从某些 webcontents 的控制台挂钩控制台消息,但请注意,这些控制台的参数存在一个已知问题,这些控制台没有被转发:即console.log('message', ...args);您可能无法获取 args。


推荐阅读