
在 JavaScript 预加载脚本中访问 Electron 的 BrowserWindow 实例
Electron 应用中,预加载脚本可在主进程和渲染进程初始化前执行,提供访问 BrowserWindow 实例的便捷途径。 通过在 webPreferences 属性中指定预加载脚本,即可实现此功能。
以下代码演示如何在预加载脚本中访问 BrowserWindow 实例:
<code class="javascript">const { BrowserWindow, ipcRenderer } = require('electron');
// 通过 process.type 判断当前执行环境
if (process.type === 'renderer') {
const win = BrowserWindow.getFocusedWindow();
if (!win) return; // 没有焦点窗口则退出
// 使用 win.webContents.postMessage 发送消息到渲染进程
win.webContents.postMessage('custom-message', { data: '示例数据' });
// 使用 ipcRenderer.send 发送 IPC 消息到主进程
ipcRenderer.send('custom-channel', { data: '示例数据' });
}</code>代码解释:
立即学习“Java免费学习笔记(深入)”;
BrowserWindow.getFocusedWindow() 获取当前拥有焦点的 BrowserWindow 实例。if (!win) return; 处理没有焦点窗口的情况,避免错误。win.webContents.postMessage() 向渲染进程发送自定义消息。ipcRenderer.send() 发送 IPC 消息到主进程,用于进程间通信。通过以上方法,预加载脚本即可访问 BrowserWindow 实例并使用其 API 进行操作,实现更灵活的应用控制。 请注意,process.type 的判断确保代码仅在预加载脚本环境中执行。
以上就是如何通过预加载脚本在 JavaScript 中访问 Electron 的 BrowserWindow 实例?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号