ElectronJS 入门教程(一)

Electron是啥

Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium 和 Node.js 到 二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建在Windows上运行的跨平台应用 macOS 和 Linux------不需要本地开发经验。 相关链接

快速入门

环境准备

先根据官方的版本日志查看对应版本所需的node版本

这里我建议通过nvm来管理node版本

安装

环境配置好之后,根据自己喜欢的方法建立项目文件夹,我这里选择使用命令行来新建文件夹

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

进入项目文件夹之后,先对项目进行初始化

bash 复制代码
npm init
json 复制代码
{
  "name": "electron-app",
  "version": "1.0.0",
  "description": "a electron app",
  "main": "main.js",
  "author": "JXDN",
  "license": "MIT"
}

这里我推荐入口文件跟官网规范一样命名为main.js,其他选项随意填写即可 初始化完成之后,安装依赖

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

如果这里出现报错,则大概率是node版本不对,执行node -v查看当前node版本 安装完毕之后,在项目根目录新建main.js、preload.js、index.html三个文件,对应文件内容如下

  • main.js
js 复制代码
const { app, BrowserWindow } = require('electron')
const path = require('node:path')

function createWindow () {
  const win = new BrowserWindow({
    width: 800,
    height: 600,
    webPreferences: {
      preload: path.join(__dirname, 'preload.js')
    }
  })

  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()
  }
})
  • preload.js
js 复制代码
window.addEventListener('DOMContentLoaded', () => {
  const replaceText = (selector, text) => {
    const element = document.getElementById(selector)
    if (element) element.innerText = text
  }

  for (const type of ['chrome', 'node', 'electron']) {
    replaceText(`${type}-version`, process.versions[type])
  }
})
  • index.html
html 复制代码
<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Hello Electron!</title>
    <meta http-equiv="Content-Security-Policy" content="script-src 'self' 'unsafe-inline';" />
</head>
<body>
    <h1>Hello Electron!</h1>
</body>
</html>

运行

完成以上所有步骤之后,在 package.json 文件中配置启动命令

json 复制代码
"scripts": {
    "start": "electron ."
}

electron .中的.是代表项目目录下的路径,可以根据自己喜欢的文件目录风格进行设置 配置好之后,运行npm start,即可成功启动项目

打包

这里我们使用Electron Forge进行打包 先安装Electron Forge脚手架

bash 复制代码
npm install --save-dev @electron-forge/cli

然后通过import将项目导入至Electron Forge

bash 复制代码
npx electron-forge import

导入成功之后,执行npm run make开始打包,打包完成之后,会在你的根目录下生成一个名为out的文件夹,其中electron-app-win32-x64目录下的electron-app.exe为项目启动文件,双击即可运行 其中默认打包的是Windows32位的64位,如下图所示:

以上就是Electron入门的基本内容了

相关推荐
北城笑笑18 小时前
Vue 109 ,从零搭建 Vue3 + Electron 工程:生态、安全桥接与打包选型( Vue + Electron )
前端·javascript·vue.js·安全·electron·vue
RobinDevNotes3 天前
从 Electron 到 GPUI,9 个跨平台桌面方案该怎么选
前端·javascript·rust·electron·openresty·前端开发工具
不可能片场6 天前
内容运营自动化 配图折行别把词切两半
前端·electron
黄连木笛6 天前
不改一行 Postman 源码,把它汉化了:Electron preload 注入 + fetch 拦截实战
javascript·electron
不可能片场7 天前
Electron 发布 正文写入的三条通道与读回口径
前端·electron
不可能片场8 天前
AI视频成片 帧间差分把拼接缝照出来
前端·electron
Noir热爱生活8 天前
deepseek harness,关于桌面版无法打开vscode修复方案
electron·deepseek
Dream-Y.ocean9 天前
鸿蒙PC平台星图遥感适配实战:基于 Electron 壳方案的纯 JavaScript 遥感图像处理引擎开发
javascript·electron·harmonyos
薛定谔的猫-菜鸟程序员9 天前
Electron开发超详细教程(从入门到放弃)
前端·javascript·electron
北城笑笑9 天前
Vue 106 ,上篇:前端桌面端应用实现方案( Electron 框架详细介绍,Vue + Electron )
前端·javascript·vue.js·python·electron