📜  electron main.js 模板 - Javascript (1)

📅  最后修改于: 2023-12-03 15:30:36.546000             🧑  作者: Mango

Electron 的 main.js 模板 - JavaScript

简介

Electron 是一个使用 Web 技术(HTML、CSS 和 JavaScript)构建跨平台桌面应用程序的开源项目。main.js 文件是 Electron 应用程序的主进程,在这个文件中我们可以设置应用程序的各种属性、监听各种事件、创建应用程序主窗口等。

我们可以根据 Electron 官方提供的 main.js 模板来快速构建一个 Electron 应用程序。该模板提供了常用的配置和常规的应用结构。

安装

使用 Electron 的 main.js 模板,我们需要先安装 Electron。可以通过 npm 进行安装。

npm install electron --save-dev
使用

Electron 的 main.js 模板通常保存在应用程序根目录下的 main.js 文件中。在该主进程文件中,我们可以完成以下任务:

  1. 引入 Electron 模块和相关工具。
  2. 设置应用程序的各种属性和配置。
  3. 创建和管理应用程序主窗口。
  4. 监听各种事件,以便在正确的时候执行正确的操作。

下面是一个简单的 Electron main.js 模板:

// 引入 electron 模块和 path 模块
const { app, BrowserWindow } = require('electron')
const path = require('path')

// app 的 ready 事件
app.on('ready', () => {
  // 创建一个窗口并加载本地 HTML 文件
  const mainWindow = new BrowserWindow({
    width: 800,
    height: 600,
    webPreferences: {
      nodeIntegration: true,
      contextIsolation: false,
      enableRemoteModule: true,
    },
  })
  mainWindow.loadFile(path.join(__dirname, 'index.html'))
})

// app 的所有窗口均关闭事件
app.on('window-all-closed', () => {
  if (process.platform !== 'darwin') {
    app.quit()
  }
})

// macOS 中的特定事件
app.on('activate', () => {
  if (BrowserWindow.getAllWindows().length === 0) {
    createWindow()
  }
})

在这个模板中,我们完成了以下任务:

  1. 引入了 Electron 模块和 path 模块。
  2. 在 app 的 ready 事件中,创建了一个窗口并加载了一个本地的 HTML 文件。
  3. 在 app 的所有窗口均关闭事件中,判断当前是否在 macOS 平台,然后关闭应用程序。
  4. 在 macOS 平台中的特定事件中,检查应用程序窗口状态,如果没有窗口,则创建一个窗口。
总结

Electron 的 main.js 模板是一个通用的应用程序结构,具有常用的配置和常规的应用结构,能够方便地帮助开发人员构建跨平台的桌面应用程序。

在构建应用程序时,我们可以根据实际需要进行进一步的定制和扩展。