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

相关推荐
Domain-zhuo1 分钟前
什么是JavaScript原型链?
开发语言·前端·javascript·jvm·ecmascript·原型模式
小丁爱养花9 分钟前
前端三剑客(三):JavaScript
开发语言·前端·javascript
ZwaterZ17 分钟前
vue el-table表格点击某行触发事件&&操作栏点击和row-click冲突问题
前端·vue.js·elementui·c#·vue
西凉河的葛三叔21 分钟前
vue3+elementui-plus el-dialog全局配置点击空白处不关闭弹窗
前端·vue3·elementui-plus
周三有雨29 分钟前
【面试题系列Vue07】Vuex是什么?使用Vuex的好处有哪些?
前端·vue.js·面试·typescript
木古古1841 分钟前
使用chrome 访问虚拟机Apache2 的默认页面,出现了ERR_ADDRESS_UNREACHABLE这个鸟问题
前端·chrome·apache
爱米的前端小笔记1 小时前
前端八股自学笔记分享—页面布局(二)
前端·笔记·学习·面试·求职招聘
loey_ln1 小时前
webpack配置和打包性能优化
前端·webpack·性能优化
建群新人小猿1 小时前
会员等级经验问题
android·开发语言·前端·javascript·php