Electron入门

这篇博客介绍了如何使用Electron.js进行桌面应用开发,包括从入门环境配置到项目调试,再到最终的软件打包成exe文件的全过程。开发者可以通过VSCode进行调试,使用`electron-packager`进行打包,并详细解析了打包参数的含义。文章还提供了代码调试和打包的技巧,是JS开发者进入桌面应用领域的实用指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Electron入门及环境配置

第一次使用js进行桌面应用开发,一方面使用js能够统一开发语言,另一方面让web app的移植更加方便
electron官网

按照要求,使用git获取官方示例可以进行第一份demo的测试

# 克隆示例项目的仓库
$ git clone https://github.com/electron/electron-quick-start

# 进入这个仓库
$ cd electron-quick-start

# 安装依赖并运行
$ npm install && npm start

运行成功则会出现1

调试
  1. 浏览器调试方式
    在vsc中打开项目,在main.js中,取消以下注释,即可通过浏览器工具直接看到运行的状态,就像在浏览器中调试一样

     mainWindow.webContents.openDevTools()
    

    效果2

  2. vsc原生调试
    Debugging in VSCode
    新开一个vsc进程,打开工程,点击调试按钮,点击创建launch.json文件。
    3
    选择node.js,vsc将会在工程文件夹下添加.vscode\launch.json文件
    将以下片段直接覆盖生成的模板

    {
    "version": "0.2.0",
    "configurations": [
      {
        "name": "Debug Main Process",
        "type": "node",
        "request": "launch",
        "cwd": "${workspaceFolder}",
        "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron",
        "windows": {
          "runtimeExecutable": "${workspaceFolder}/node_modules/.bin/electron.cmd"
        },
        "args" : ["."]
      }
    ]
    }
    

    在main.js文件中添加断点测试是否成功
    4
    一般这两个就能处理js和渲染端的debug需求了
    参考
    Electron的代码调试

打包

软件编写结束后,多半是使用exe安装运行,则需要将工程打包exe文件

  1. 安装打包模块
    npm install electron-packager -g
    安装成功后使用npm list -g --depth=0查看安装结果
  2. 开始打包
    • 使用指令直接打包
      electron-packager . 'HelloWorld' --platform=win32 --arch=x64 --out=./out --asar --app-version=0.0.1 --overwrite --ignore=node_modules
      参数对应

      location of project:项目所在路径
      name of project:打包的项目名字
      platform:确定了你要构建哪个平台的应用 (Windows、 Mac 还是 Linux)
      arch:决定了使用 x86 还是 x64 还是两个架构都用
      icon:软件图标,找不到则使用默认的图片,参数可以是字符串类型的相对路径,eg:--icon='src\\image\\desktop1.ico',需要注意的是ico文件不能通过修改后缀获得
      out:设置输出文件夹
      asar:该参数可以不加,如果加上,打包之后应用的源码会以.asar格式存在
      app-version=0.0.1:生成应用的版本号
      overwrite:覆盖原有的build,让新生成的包覆盖原来的包
      ignore=node_modules:如果加上该参数,项目里node_modules模块不会被打包进去

    • 修改package.json进行打包
      打开项目的package.json,
      其中的script原内容为
         "scripts": {
         "start": "electron .",
         }
      
      原本"start": "electron .",是用于启动软件用于调试的,在上面实现了vsc调试后可以删除该行,并添加打包指令,修改后的script内容为
         "scripts": {
             "package":"electron-packager . HelloWorld --platform=win32 --arch=x64 --icon=computer.ico --out=./out --asar --app-version=0.0.1 --overwrite --ignore=node_modules"
         },
      
      参数解释同上
      在命令行中使用npm run package,即可实现打包功能

参考
electron打包生成exe文件
Electron入门应用打包exe(windows)

### Electron框架入门教程 #### 什么是ElectronElectron 是一个用于构建跨平台桌面应用程序的开源框架,它允许开发者利用 JavaScript、HTML 和 CSS 创建原生桌面应用。通过嵌入 Chromium 和 Node.js,Electron 可以让开发者仅维护一套基于 Web 的代码库,从而实现跨 Windows、macOS 和 Linux 平台的应用程序开发[^3]。 --- #### 安装与环境准备 要开始使用 Electron,首先需要安装 Node.js 和 npm(Node Package Manager)。可以通过以下命令验证是否已正确安装: ```bash node -v && npm -v ``` 如果尚未安装,请访问官方页面下载最新版本:[Node.js官网](https://nodejs.org/)。 接着,在项目目录下初始化一个新的 Node.js 应用程序,并安装 Electron: ```bash npm init -y npm install electron --save-dev ``` 上述操作会创建 `package.json` 文件并将 Electron 添加到项目的依赖项中[^1]。 --- #### 基本结构 一个典型的 Electron 应用通常包含以下几个文件: - **main.js**: 这是主进程脚本,负责管理窗口和操作系统之间的交互。 - **index.html**: 渲染界面的内容。 - **renderer.js (可选)**: 渲染进程中使用的逻辑脚本。 下面是一个简单的示例配置: ##### main.js 这是主进程的核心部分,定义了如何启动和关闭应用程序以及创建浏览器窗口。 ```javascript const { app, BrowserWindow } = require('electron'); function createWindow() { const win = new BrowserWindow({ width: 800, height: 600, webPreferences: { nodeIntegration: true, contextIsolation: false, }, }); win.loadFile('index.html'); } app.whenReady().then(() => { createWindow(); app.on('activate', () => { if (BrowserWindow.getAllWindows().length === 0) { createWindow(); } }); }); app.on('window-all-closed', () => { if (process.platform !== 'darwin') { app.quit(); } }); ``` ##### index.html 这是一个基本的 HTML 页面,作为应用的主要视图。 ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Electron App</title> </head> <body> <h1>Hello from Electron!</h1> <p>This is a basic example of an Electron application.</p> </body> </html> ``` --- #### 启动应用 完成以上设置后,可以在 `package.json` 中添加一条启动脚本来简化流程: ```json { "name": "my-electron-app", "version": "1.0.0", "main": "main.js", "scripts": { "start": "electron ." } } ``` 随后运行以下命令来启动您的第一个 Electron 应用: ```bash npm start ``` 这将会打开一个带有自定义内容的新窗口[^2]。 --- #### 使用 electron-vite 加速开发 对于希望提升性能和体验的开发者来说,可以尝试使用 electron-vite 工具链。该工具旨在提供更快、更精简的开发体验,主要分为五个模块化组件进行优化[^2]。以下是其快速搭建方法: ```bash npm create vite@latest my-electron-project --template vanilla cd my-electron-project npm install electron @electron/vite-plugin-main-process-renderer ``` 更多细节请参考官方文档或相关资源链接。 --- 问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值