Electron打包文件生成.exe文件打开即可使用

1 、Electron 打包,包括需要下载的内容和环境配置步骤

注意:Electron 是一个使用 JavaScript、HTML 和 CSS 构建跨平台桌面应用程序的框架

首先需要电脑环境有Node.js 和 npm我之前的文章有关nvm下载node的说明也可以去官网下载

检查是否有node和npm环境命令

复制代码
node -v
npm -v

输出版本号,说明安装成功

2、创建 Electron 项目

2.1 创建项目目录

打开命令行工具,创建一个新的项目目录并进入该目录:

复制代码
mkdir electron-app
cd electron-app

2.2 初始化项目

javascript 复制代码
npm init -y

2.3 安装 Electron

javascript 复制代码
npm install electron --save-dev

2.4 创建项目文件(可在vscode或者hbuilder打开并创建)

在项目根目录下创建 main.js 和 index.html 文件。

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', function () {
    if (BrowserWindow.getAllWindows().length === 0) createWindow()
  })
})

app.on('window-all-closed', function () {
  if (process.platform !== 'darwin') app.quit()
})

index.html 文件内容如下:

javascript 复制代码
<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Hello World!</title>
</head>
<body>
  <h1>Hello World!</h1>
  We are using Node.js <script>document.write(process.versions.node)</script>,
  Chromium <script>document.write(process.versions.chrome)</script>,
  and Electron <script>document.write(process.versions.electron)</script>.
</body>
</html>
2.5 配置启动脚本

package.json 文件中添加启动脚本:

javascript 复制代码
{
  "name": "electron-app",
  "version": "1.0.0",
  "description": "",
  "main": "main.js",
  "scripts": {
    "start": "electron ."
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "electron": "^23.2.1"
  }
}

2.6 启动项目

在命令行中执行以下命令启动 Electron 应用:

javascript 复制代码
npm start

3. 选择打包工具并安装

常见的 Electron 打包工具有 electron-builder 和 electron-packager,这里以 electron-builder 为例。

3.1 安装 electron-builder

在项目目录下执行以下命令安装 electron-builder:

复制代码
npm install electron-builder --save-dev

4. 配置 electron-builder

在 package.json 文件中添加 build 字段来配置打包选项:

javascript 复制代码
{
  "name": "electron-app",
  "version": "1.0.0",
  "description": "",
  "main": "main.js",
  "scripts": {
    "start": "electron .",
    "pack": "electron-builder --dir",
    "dist": "electron-builder"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "electron": "^23.2.1",
    "electron-builder": "^23.6.0"
  },
  "build": {
    "appId": "com.example.electron-app",
    "productName": "Electron App",
    "directories": {
      "output": "dist"
    },
    "win": {
      "target": [
        "nsis"
      ]
    },
    "mac": {
      "target": [
        "dmg"
      ]
    },
    "linux": {
      "target": [
        "deb"
      ]
    }
  }
}

上述配置中,appId 是应用的唯一标识符,productName 是应用的名称,directories.output 是打包输出的目录。win、mac 和 linux 分别指定了不同操作系统下的打包目标。

5. 打包应用

5.1 打包测试

执行以下命令进行打包测试,该命令会在 dist 目录下生成一个未压缩的应用包:

javascript 复制代码
npm run pack

5.2 正式打包

执行以下命令进行正式打包,会生成不同操作系统下的安装包:

javascript 复制代码
npm run dist

打包完成后,在 dist 目录下可以找到生成的安装包。

相关推荐
你挚爱的强哥39 分钟前
【sgAutocomplete_v2】自定义组件:基于elementUI的el-input组件开发的搜索输入框(支持本地保存历史搜索关键词、后台获取匹配项)
javascript·vue.js·elementui
hikktn44 分钟前
【开源宝藏】30天学会CSS - DAY2 第二课 Loader Ring Demo
前端·css·开源
晓夜残歌4 小时前
安全基线-rm命令防护
运维·服务器·前端·chrome·安全·ubuntu
inxunoffice4 小时前
批量删除 PPT 空白幻灯片页面
前端·powerpoint
Setsuna_F_Seiei6 小时前
前端切图仔的一次不务正业游戏开发之旅
前端·游戏·cocos creator
laimaxgg6 小时前
Qt窗口控件之颜色对话框QColorDialog
开发语言·前端·c++·qt·命令模式·qt6.3
爱编程的鱼7 小时前
Unity—从入门到精通(第一天)
前端·unity·ue5·游戏引擎
默默无闻 静静学习7 小时前
sass介绍
前端·sass
大怪v7 小时前
前端佬们,装起来!给设计模式【祛魅】
前端·javascript·设计模式
sunly_7 小时前
Flutter:页面滚动,导航栏背景颜色过渡动画
开发语言·javascript·flutter