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

相关推荐
JustHappy8 小时前
古法编程秘籍(二):什么是代码模块化?别背概念,把房间收拾明白就够了
前端·后端
小江的记录本8 小时前
【JVM虚拟机】堆内存分代模型:年轻代(Eden+Survivor)、老年代、元空间Metaspace(附《思维导图》+《面试高频考点清单》)
java·前端·jvm·后端·python·spring·面试
weixin_471383038 小时前
图片预解码缓存
前端·浏览器缓存·图片预解码
郑洁文10 小时前
基于网络爬虫的Web敏感信息泄露自动化检测工具
前端·爬虫·网络安全·自动化
郑洁文10 小时前
可视化Web渗透分析工具的设计与实现
前端
罗超驿11 小时前
18.Web API 实战:元素与表单属性的获取和修改
开发语言·前端·javascript
边界条件╝11 小时前
微前端进阶(四)
前端·状态模式
无风听海11 小时前
JSON Web Token(JWT)完全指南
java·前端·json
IT_陈寒12 小时前
Python闭包里藏的这个坑,差点让我加班到凌晨
前端·人工智能·后端
IT_陈寒12 小时前
Java注解空指针?这个坑我踩得莫名其妙
前端·人工智能·后端