electron在主窗口中打开新的窗口
时间: 2024-10-20 20:03:17 浏览: 23
在 Electron 中,要在主窗口中打开一个新的窗口,你可以通过以下步骤操作:
1. 首先,在主窗口的 JavaScript 文件中,导入必要的 Electron 模块,如 `BrowserWindow`:
```javascript
const { BrowserWindow } = require('electron');
```
2. 定义一个函数来创建并显示新窗口:
```javascript
async function createNewWindow() {
// 创建一个新的浏览器窗口实例
const newWindow = new BrowserWindow({
width: 800,
height: 600, // 窗口尺寸
webPreferences: {
nodeIntegration: true, // 如果需要 Node.js 支持
contextIsolation: false, // 若不需要隔离每个窗口的上下文环境
},
// 可选:设置父窗口为当前主窗口
parent: global.mainWindow || null,
});
// 加载 HTML 或者 URL
newWindow.loadFile('path_to_your_html_file.html'); // 使用本地文件路径
// 或者
// newWindow.loadURL('https://www.example.com'); // 使用网络地址
// 当新窗口加载完成后显示
await newWindow.webContents.isReady();
newWindow.show();
// 新窗口关闭时的回调
newWindow.on('closed', () => {
console.log('子窗口已关闭');
});
}
```
3. 调用这个函数,通常在主窗口初始化或者用户触发某个事件时:
```javascript
global.mainWindow = new BrowserWindow(); // 如果还没有创建主窗口,则先创建
createNewWindow();
```
以上就是在 Electron 主窗口中打开新窗口的基本流程。你可以根据实际需求调整窗口的属性。
阅读全文