// main.js - Electron 主进程文件
const { app, BrowserWindow } = require('electron');
function createWindow () {
// 创建浏览器窗口
const win = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true
}
});
// 加载index.html文件
win.loadFile('index.html');
}
// 当Electron完成初始化并准备创建浏览器窗口时调用此方法
app.whenReady().then(createWindow);
// 所有窗口关闭时退出应用
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') {
app.quit();
}
});
app.on('activate', () => {
// 在macOS上,当单击dock图标且没有其他窗口打开时,
// 通常应在应用程序中重新创建一个窗口
if (BrowserWindow.getAllWindows().length === 0) {
createWindow();
}
});
引入模块:const { app, BrowserWindow } = require('electron');
这行代码引入了Electron的app
和BrowserWindow
模块。app
模块管理应用程序的生命周期事件,而BrowserWindow
模块用于创建和管理浏览器窗口。
创建窗口:createWindow
函数用于创建一个新的浏览器窗口,并加载HTML文件。webPreferences
选项启用了Node.js集成,允许在渲染进程中使用Node.js功能。
应用启动:app.whenReady().then(createWindow);
当Electron完成初始化并准备好创建浏览器窗口时,调用createWindow
函数。
窗口关闭:app.on('window-all-closed', ...)
当所有窗口关闭时,如果操作系统不是macOS,则退出应用程序。macOS上即使关闭所有窗口,应用程序仍然会在后台运行,直到用户明确退出。
激活应用:app.on('activate', ...)
在macOS上,当用户点击Dock图标时,如果没有打开的窗口,会重新创建一个窗口。
这个示例展示了如何使用Electron创建一个简单的桌面应用程序,包含主进程的基本配置。
上一篇:js 获取年月
下一篇:js json key
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站