【vue、Electron】搭建一个Electron vue项目过程、将前端页面打包成exe 桌面应用

本文主要是介绍【vue、Electron】搭建一个Electron vue项目过程、将前端页面打包成exe 桌面应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 使用 electron-vue 创建项目
    • 1. 安装 vue-cli(如果未安装)
    • 2. 使用 electron-vue 模板创建项目
    • 3. 安装和配置 electron-builder
    • 4. 运行Electron项目
    • 5. 打包应用
  • 可能遇到的问题
    • 解决Electron vue首次启动巨慢无法加载
    • 执行npm run electron:build打包慢
    • 如何设置打包的logo、设置exe图标
    • 设置页面程序的大小、窗口大小
    • 如何设置打开窗口的名称/标题
    • 如何设置打包后exe的名称
  • 其他注意事项

前言

在Electron应用中结合使用Vue.js,可以创建功能强大的桌面应用程序。为了将Electron与Vue.js集成,你可以使用electron-vue,一个流行的工具包,它简化了在Electron项目中使用Vue.js的过程。

该篇文章参考:搭建Electron vue项目过程

使用 electron-vue 创建项目

electron-vue 是一个已经配置好的项目模板,集成了Vue.js和Electron,可以快速启动开发。以下是使用electron-vue创建项目的步骤:

1. 安装 vue-cli(如果未安装)

如果你还没有安装vue-cli,需要先安装它:

npm install -g @vue/cli

2. 使用 electron-vue 模板创建项目

使用以下命令创建一个新项目:

vue create my-project

然后,在询问要使用的模板时,选择Manually select features并选择需要的特性(如Babel、Router等)。创建完成后,进入项目目录:

cd my-project

3. 安装和配置 electron-builder

安装electron-builder来处理打包和发布:

vue add electron-builder

4. 运行Electron项目

在安装完所有依赖后,你可以通过以下命令来启动你的Electron应用:

npm run electron:serve

这个命令会启动Electron,并在Vue的开发服务器上运行你的应用。

5. 打包应用

要打包你的Electron应用,可以运行以下命令:

npm run electron:build

这个命令会生成一个适合分发的应用程序包。

可能遇到的问题

  • 解决Electron vue首次启动巨慢无法加载

参考文章:解决Electron vue-cli3.0+首次启动巨慢无法加载 vue-devtool 插件
首次启动可能会等待很久,出现以下信息:

INFO  Launching Electron...
Failed to fetch extension, trying 4 more times
Failed to fetch extension, trying 3 more times
Failed to fetch extension, trying 2 more times

如图

在这里插入图片描述

解决方案:

找到background.js,将下面代码注释:

// import installExtension, { VUEJS3_DEVTOOLS } from 'electron-devtools-installer'
  • 执行npm run electron:build打包慢

如果遇到执行打包命令反应很慢,如下
在这里插入图片描述
具体代码是:

electron-builder  version=22.14.13 os=10.0.22000 • description is missed in the package.json  appPackageFile=C:\Users\16566\Desktop\demo\my-project\dist_electron\bundled\package.json·• author is missed in the package.json  appPackageFile=C:\Users\16566\Desktop\demo\my-project\dist_electron\bundled\package.json• writing effective config  file=dist_electron\builder-effective-config.yaml• packaging       platform=win32 arch=x64 electron=11.5.0 appOutDir=dist_electron\win-unpacked• downloading     url=https://github.com/electron/electron/releases/download/v11.5.0/electron-v11.5.0-win32-x64.zip size=78 MB parts=8• canceling       signal=interrupt• cancelled by SIGINT• downloaded      url=https://github.com/electron/electron/releases/download/v11.5.0/electron-v11.5.0-win32-x64.zip duration=1m11.907s• cannot unpack electron zip file, will be re-downloaded  error=zip: not a valid zip file

解决方法如下:
参考文章:electron-builder 打包过慢解决
在这里插入图片描述
上图这个目录下找到这个文件 将以下内容粘贴进去就可以了

registry=https://registry.npmmirror.com/
disturl=https://registry.npmmirror.com/-/binary/node/
sass_binary_site=https://registry.npmmirror.com/node-sass
phantomjs_cdnurl=https://registry.npmmirror.com/phantomjs
chromedriver_cdnurl=https://registry.npmmirror.com/-/binary/chromedriver/
operadriver_cdnurl=https://registry.npmmirror.com/-/binary/operadriver/
electron_mirror=https://registry.npmmirror.com/-/binary/electron/
electron_builder_binaries_mirror=https://registry.npmmirror.com/-/binary/electron-builder-binaries/
always-auth=false
  • 如何设置打包的logo、设置exe图标

参考文章:
electron打包应用logo及名称更改
5 分钟配置好 Electron 应用的图标
Electron 打包安装包 更换系统图标(Windows)

可能使用的工具:
图片转ICO、ICO图标生成

准备好图标文件icon.png,然后在background.js 中 找到并添加一行代码

const win = new BrowserWindow({width: 1200,height:800,webPreferences: {// Use pluginOptions.nodeIntegration, leave this alone// See nklayman.github.io/vue-cli-plugin-electron-builder/guide/security.html#node-integration for more infonodeIntegration: process.env.ELECTRON_NODE_INTEGRATION,contextIsolation: !process.env.ELECTRON_NODE_INTEGRATION,},icon: __dirname + '/icon.png' // 设置应用图标路径
});

添加后的文件代码:

在这里插入图片描述

再次执行打包命令 打包后的logo就更换好了

在这里插入图片描述

  • 设置页面程序的大小、窗口大小

在background.js中找到width与height 就是窗口的大小

在这里插入图片描述

  • 如何设置打开窗口的名称/标题

在background.js中添加代码,如下图

在这里插入图片描述
添加后的效果图

在这里插入图片描述

  • 如何设置打包后exe的名称

第一种方法:找到package.json文件 添加下面代码

  "productName": "阿德泰产线负载测试-v1.0.1-adt-1200tk4",

添加代码后的文件图

在这里插入图片描述
第二种方法:找到vue.config.js 文件添加下面代码
参考文章:vue+electron-builder打包桌面应用程序改变其名字

module.exports = {runtimeCompiler: true,pluginOptions: {electronBuilder: {        builderOptions: { 'productName': '芯片测试数据分析'//此处表示打包后的桌面应用程序的名字,可以是中文}}},
}

添加代码后的文件图

在这里插入图片描述
这样打包后的文件名就是按照自定义的了

其他注意事项

  • 主进程和渲染进程:在使用Vue.js时,注意将UI相关的逻辑放在渲染进程中,而业务逻辑可以放在Electron的主进程中。
  • 调试:你可以使用Chrome DevTools调试渲染进程中的Vue.js代码。electron-builder 也支持热重载功能,可以方便地进行调试。
  • Vuex 和 Vue Router:vue-cli-plugin-electron-builder 支持Vuex和Vue Router,适用于构建复杂的Electron应用。

这篇关于【vue、Electron】搭建一个Electron vue项目过程、将前端页面打包成exe 桌面应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1119282

相关文章

SpringBoot 整合 Grizzly的过程

《SpringBoot整合Grizzly的过程》Grizzly是一个高性能的、异步的、非阻塞的HTTP服务器框架,它可以与SpringBoot一起提供比传统的Tomcat或Jet... 目录为什么选择 Grizzly?Spring Boot + Grizzly 整合的优势添加依赖自定义 Grizzly 作为

Python 中 requests 与 aiohttp 在实际项目中的选择策略详解

《Python中requests与aiohttp在实际项目中的选择策略详解》本文主要介绍了Python爬虫开发中常用的两个库requests和aiohttp的使用方法及其区别,通过实际项目案... 目录一、requests 库二、aiohttp 库三、requests 和 aiohttp 的比较四、requ

mysql-8.0.30压缩包版安装和配置MySQL环境过程

《mysql-8.0.30压缩包版安装和配置MySQL环境过程》该文章介绍了如何在Windows系统中下载、安装和配置MySQL数据库,包括下载地址、解压文件、创建和配置my.ini文件、设置环境变量... 目录压缩包安装配置下载配置环境变量下载和初始化总结压缩包安装配置下载下载地址:https://d

SpringBoot项目启动后自动加载系统配置的多种实现方式

《SpringBoot项目启动后自动加载系统配置的多种实现方式》:本文主要介绍SpringBoot项目启动后自动加载系统配置的多种实现方式,并通过代码示例讲解的非常详细,对大家的学习或工作有一定的... 目录1. 使用 CommandLineRunner实现方式:2. 使用 ApplicationRunne

将Python应用部署到生产环境的小技巧分享

《将Python应用部署到生产环境的小技巧分享》文章主要讲述了在将Python应用程序部署到生产环境之前,需要进行的准备工作和最佳实践,包括心态调整、代码审查、测试覆盖率提升、配置文件优化、日志记录完... 目录部署前夜:从开发到生产的心理准备与检查清单环境搭建:打造稳固的应用运行平台自动化流水线:让部署像

vue解决子组件样式覆盖问题scoped deep

《vue解决子组件样式覆盖问题scopeddeep》文章主要介绍了在Vue项目中处理全局样式和局部样式的方法,包括使用scoped属性和深度选择器(/deep/)来覆盖子组件的样式,作者建议所有组件... 目录前言scoped分析deep分析使用总结所有组件必须加scoped父组件覆盖子组件使用deep前言

VUE动态绑定class类的三种常用方式及适用场景详解

《VUE动态绑定class类的三种常用方式及适用场景详解》文章介绍了在实际开发中动态绑定class的三种常见情况及其解决方案,包括根据不同的返回值渲染不同的class样式、给模块添加基础样式以及根据设... 目录前言1.动态选择class样式(对象添加:情景一)2.动态添加一个class样式(字符串添加:情

使用IntelliJ IDEA创建简单的Java Web项目完整步骤

《使用IntelliJIDEA创建简单的JavaWeb项目完整步骤》:本文主要介绍如何使用IntelliJIDEA创建一个简单的JavaWeb项目,实现登录、注册和查看用户列表功能,使用Se... 目录前置准备项目功能实现步骤1. 创建项目2. 配置 Tomcat3. 项目文件结构4. 创建数据库和表5.

Python项目打包部署到服务器的实现

《Python项目打包部署到服务器的实现》本文主要介绍了PyCharm和Ubuntu服务器部署Python项目,包括打包、上传、安装和设置自启动服务的步骤,具有一定的参考价值,感兴趣的可以了解一下... 目录一、准备工作二、项目打包三、部署到服务器四、设置服务自启动一、准备工作开发环境:本文以PyChar

springboot整合gateway的详细过程

《springboot整合gateway的详细过程》本文介绍了如何配置和使用SpringCloudGateway构建一个API网关,通过实例代码介绍了springboot整合gateway的过程,需要... 目录1. 添加依赖2. 配置网关路由3. 启用Eureka客户端(可选)4. 创建主应用类5. 自定