Electron桌面端构建

Electron 是一个开源框架,用于构建跨平台的桌面应用程序。它由 GitHub 开发,并且基于 Node.js 和 Chromium 构建。Electron 允许开发者使用 Web 技术(HTML、CSS 和 JavaScript)来创建桌面程序,可以在 Windows、macOS 和 Linux 等操作系统上运行。

Electron 的核心是一个使用 Chromium 运行时的 JavaScript 运行环境。它将你的应用程序和本地操作系统进行了解耦,使你可以使用 Web 技术来构建界面和处理用户交互,并且可以访问本地的系统资源和功能,如文件系统、网络等。这使得 Electron 非常适合开发跨平台的桌面应用程序,如文本编辑器、IDE、音乐播放器等。

Electron 还有丰富的插件生态系统,开发者可以通过使用第三方插件来扩展应用程序的功能,如添加通知、文件拖放、快捷键等。

Electron 提供了一种简单、灵活且强大的方式来开发跨平台的桌面应用程序,同时利用 Web 技术的优势和丰富的插件生态系统,使开发过程更加高效和便捷。

启动项目

java 复制代码
npm install -g @vue/cli  //安装 Vue CLI
vue create my-vue-electron-project //创建一个新的 Vue.js 项目
cd my-vue-electron-project //进入目录
npm install electron --save-dev //安装 electron 及其他必要的依赖

创建main.js

scss 复制代码
const { app, BrowserWindow } = require('electron')

function createWindow () {
  // 创建浏览器窗口
  const win = new BrowserWindow({
    width: 800,
    height: 600,
    webPreferences: {
      nodeIntegration: true
    }
  })

  // 加载 Vue 应用的 index.html 文件
  win.loadURL('http://localhost:8080')

  // 打开开发者工具
  win.webContents.openDevTools()
}

// 当 Electron 完成初始化并准备创建浏览器窗口时调用此方法
app.whenReady().then(createWindow)

// 在所有窗口关闭时退出应用
app.on('window-all-closed', () => {
  if (process.platform !== 'darwin') {
    app.quit()
  }
})

app.on('activate', () => {
  if (BrowserWindow.getAllWindows().length === 0) {
    createWindow()
  }
})

修改pacakge.json文件,添加 Electron 的配置。在package.json文件的scripts部分,换成electron的配置

json 复制代码
"scripts": {
  "serveserve": "vue-cli-service build && electron .",
  "build": "vue-cli-service build",
  "lint": "vue-cli-service lint"
},

运行 npm run serveserve

相关推荐
崔庆才丨静觅5 小时前
hCaptcha 验证码图像识别 API 对接教程
前端
passerby60615 小时前
完成前端时间处理的另一块版图
前端·github·web components
掘了5 小时前
「2025 年终总结」在所有失去的人中,我最怀念我自己
前端·后端·年终总结
崔庆才丨静觅5 小时前
实用免费的 Short URL 短链接 API 对接说明
前端
崔庆才丨静觅6 小时前
5分钟快速搭建 AI 平台并用它赚钱!
前端
崔庆才丨静觅6 小时前
比官方便宜一半以上!Midjourney API 申请及使用
前端
Moment6 小时前
富文本编辑器在 AI 时代为什么这么受欢迎
前端·javascript·后端
崔庆才丨静觅7 小时前
刷屏全网的“nano-banana”API接入指南!0.1元/张量产高清创意图,开发者必藏
前端
剪刀石头布啊7 小时前
jwt介绍
前端
爱敲代码的小鱼7 小时前
AJAX(异步交互的技术来实现从服务端中获取数据):
前端·javascript·ajax