vue项目使用eletron将打包成桌面应用(.exe)

vue项目使用eletron将打包成桌面应用(.exe)

1.前期准备

两个项目:
1、自己用vue cli创建的项目
2、第二个是去gitee将案例clone下来
案例地址 https://gitee.com/qingplus/electron-quick-start.git

2、测试案例是否可以正常运行
# 进入项目
cd electron-quick-start
# 安装依赖库
npm install
# 运行应用
npm start

项目运行成功后效果如下

在这里插入图片描述

3、运行

在自己vue项目下的package.json 中的scripts下添加 如下代码

 "electron_dev": "npm run build && electron build/electron.js","electron_build": "electron-packager ./dist --platform=win32 --arch=x64 --icon=./public/favicon.ico --overwrite"

添加后在这里插入图片描述
新加的两行是electron的启动 和打包命令
分别用了electron 和electron-packager安装这两个
在vue项目下安装以下依赖

npm install electron --save-dev
npm install electron-packager --save-dev

在使用electron_dev 命令前,需要将vue.config.js 中的publicPath: ‘/’ 修改为 ‘./’

// 默认部署在在服务器根路径,设为空字符串 ('') 或是相对路径 ('./')均表示所有的资源都会被链接为相对路径,这样打出来的包可以被部署在任意路径publicPath: "./",

在vue cli项目里创建一个文件夹名为 build,将electron-quick-start 中的main.js 复制到vue cli下面的build文件夹,并将main.js改名字为electron.js,修改electron.js内容

const { app, BrowserWindow } = require('electron')
const path = require('path')
const url = require('url')
function createWindow() {// 此处设置窗口大小const mainWindow = new BrowserWindow({width: 800,height: 600})// 此处设置入口页面mainWindow.loadURL(url.format({pathname: path.join(__dirname, '../dist/index.html'),protocol: 'file:',slashes: true}))// 此处设置关闭菜单栏mainWindow.setMenu(null)
}app.whenReady().then(() => {createWindow() app.on('activate', function() {if (BrowserWindow.getAllWindows().length === 0) createWindow()})
}) 
app.on('window-all-closed', function() {if (process.platform !== 'darwin') app.quit()
})

然后执行命令

npm run electron_dev

就可以将自己的vue项目以桌面软件的形式运行
在这里插入图片描述

4、打包

首先使用以下命令将vue 项目打包成dist文件夹

npm run build

将electron.js移动到dist文件下,同时还有electron-quick-start中的package.json,目录结构如下

在这里插入图片描述
打包好的文件如下所示:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/773864.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

任务管理工具Trello体验如何?一文揭秘

Trello是一款高效的协作与工作管理应用,这里我们将详细介绍Trello的功能、特点、优劣势、价格、定价、发展历程、使用场景以及使用技巧等等。 一、Trello 是什么 Trello是一款高效的协作与工作管理应用,设计用于跟踪团队项目、凸显当前活动任务、指派责…

索引器(indexer)demo

1.索引器允许类或者结构的实例按照与数组相同的方式进行索引。 索引器类似于属性,不同之处在于他们的访问采用参数。 2.索引器必须以this关键字定义,这个this代表类实例化后的对象,如下定义一个类的索引器实例: public class IDXer …

POJ3037 + HDU-6714

两道最短路好题 POJ3037 手玩一下 发现每一点的速度可以直接搞出来&#xff0c;就是pow(2,h[1][1]-h[i][j])*V 那么从这个点出发到达别的点的耗费的时间都是上面这个数的倒数&#xff0c;然后直接跑最短路就好了 #include<iostream> #include<vector> #include<…

某头部券商企业:朗思Agent 数字员工上岗,提质增效,释放人力

在数字化转型背景下&#xff0c;越来越多证券企业积极探索数字员工在运营管理和业务经营中的应用&#xff0c;全面提升服务效能&#xff0c;推进数智化建设&#xff0c;以应对行业内的诸多挑战。 某券商企业加强数字赋能&#xff0c;积极部署数字员工&#xff0c;仅财务中心工…

赛氪网积极参与千校万企协同创新行动,推动产学研深度融合

3月17日&#xff0c;中国千校万企协同创新推进会在北京盛大召开&#xff0c;会议旨在实现高校与行业龙头企业技术升级需求的精准对接&#xff0c;加速新质生产力的形成与发展。教育部党组成员、副部长孙尧&#xff0c;科技部成果转化司副司长秦浩源&#xff0c;国家知识产权局知…

王者荣耀国服米莱迪 - 出装打法详细教学视频(最新)

01. 恰到好处的一技能 02. 灵魂二技能 03. 无敌大招连招 04. 为所欲为的出装 05. 拥有这个召唤师技能赢一半 06. 英雄克制 07. 整局精讲 08. 米莱迪最强出装 09. 米莱迪最强出装的铭文 发送内容: "米莱迪", 获取提取码

unity 2d范围检测:怪物检测范围

需求 实现怪物有一定范围的侦测能力&#xff0c;当目标进入侦测范围内后&#xff0c;自动追踪目标[使用unity navmash实现]&#xff0c;当子弹进入时&#xff0c;销毁子弹&#xff0c;播放怪物死亡动画以及其他事件。 实现方案 实现怪物在主角靠近一定范围内时发动攻击的功能…

智慧楼宇一体可视化管理平台方案

现状分析 考勤问题 传统IC卡考勤存在漏洞,无法避免人员代刷卡的问题传统IC卡需要成本,丢失后容易造成公司财产安全隐患,而且补卡麻烦大楼内未部署人脸识别系统,无法实现工作人员的人脸无感考勤对黑名单人员无法进行管控;空间管理问题 工位管理大楼办公区工位较多,管理者无…

【Java程序设计】【C00383】基于(JavaWeb)Springboot的水产养殖系统(有论文)

【C00383】基于&#xff08;JavaWeb&#xff09;Springboot的水产养殖系统&#xff08;有论文&#xff09; 项目简介项目获取开发环境项目技术运行截图 博主介绍&#xff1a;java高级开发&#xff0c;从事互联网行业六年&#xff0c;已经做了六年的毕业设计程序开发&#xff0c…

阿里云ECS选型推荐配置

本文介绍构建Kubernetes集群时该如何选择ECS类型以及选型的注意事项。 集群规格规划 目前在创建Kubernetes集群时&#xff0c;存在着使用很多小规格ECS的现象&#xff0c;这样做有以下弊端&#xff1a; 网络问题&#xff1a;小规格Worker ECS的网络资源受限。 容量问题&…

推荐多样性 - 华为OD统一考试(C卷)

OD统一考试(C卷) 分值: 200分 题解: Java / Python / C++ 题目描述 推荐多样性需要从多个列表中选择元素,一次性要返回N屏数据(窗口数量),每屏展示K个元素(窗口大小),选择策略: 各个列表元素需要做穿插处理,即先从第一个列表中为每屏选择一个元素,再从第二个列表…

BRICK POP展示了有趣的链上游戏玩法与奖励机制

新游戏BRICK POP将Sui区块链技术与低Gas费用&#xff0c;以及其在Web3游戏开发方面的专业知识无缝结合。通过充分利用Sui和ONBUFF的INNO平台优势&#xff0c;BRICK POP为玩家提供了一个融合了前沿技术和引人入胜游戏的沉浸式游戏体验。BRICK POP游戏设计为实时交易和高用户参与…

Mybatis-01

Mybatis >Mybatis是什么? MyBatis 是一款优秀的持久层框架&#xff0c;它支持 SQL、存储过程以及高级映射。 >Mybatis的三种使用方式 ① sqlSession执行对应语句&#xff08;不推荐&#xff09; ② 利用注解 &#xff08;只适用于较短的sql语句&#xff09; ③ 接…

大数据开发(日志离线分析项目)

大数据开发&#xff08;日志离线分析项目&#xff09; 一、项目需求1、使用jqueryecharts的方式调用程序后台提供的rest api接口&#xff0c;获取json数据&#xff0c;然后通过jquerycss的方式进行数据展示。工作流程如下&#xff1a;2、七大角度1、用户基本信息分析模块2、浏览…

【Python】学习率调整策略详解和示例

学习率调整得当将有助于算法快速收敛和获取全局最优&#xff0c;以获得更好的性能。本文对学习率调度器进行示例介绍。 学习率调整的意义基础示例无学习率调整方法学习率调整方法一多因子调度器余弦调度器 结论 学习率调整的意义 首先&#xff0c;学习率的大小很重要。如果它…

java 面向对象入门

类的创建 右键点击对应的包&#xff0c;点击新建选择java类 填写名称一般是名词&#xff0c;要知道大概是什么的名称&#xff0c;首字母一般大写 下面是创建了一个Goods类&#xff0c;里面的成员变量有&#xff1a;1.编号&#xff08;id&#xff09;&#xff0c;2.名称&#x…

Android 性能优化(六):启动优化的详细流程

书接上文&#xff0c;Android 性能优化&#xff08;一&#xff09;&#xff1a;闪退、卡顿、耗电、APK 从用户体验角度有四个性能优化方向&#xff1a; 追求稳定&#xff0c;防止崩溃追求流畅&#xff0c;防止卡顿追求续航&#xff0c;防止耗损追求精简&#xff0c;防止臃肿 …

【IT之家】IT之家网站的资讯文章资源,实时数据抓取检索软件免费下载NO.65

简介&#xff1a;IT之家是业内领先的IT资讯和数码产品类网站。IT之家快速精选泛科技新闻&#xff0c;分享即时的IT业界动态和紧跟潮流的数码产品资讯&#xff0c;提供给力的PC和手机技术文章、丰富的系统应用美化资源&#xff0c;以及享不尽的智能阅读。 本软件基于C#实现的win…

JAVA学习-网络编程.TCP

TCP&#xff08;Transmission Control Protocol&#xff09;是一种面向连接的、可靠的传输协议&#xff0c;它在Java网络编程中被广泛应用。TCP通信可以确保数据的可靠传输&#xff0c;并且具有一定的顺序性。 一、Java中实现TCP通信主要有以下几种方式&#xff1a; 1. Socke…

深度学习 (自动求导)

介绍&#xff1a; 深度学习是一种机器学习方法&#xff0c;其使用神经网络模型来进行学习和预测。自动求导是深度学习中的一项重要技术&#xff0c;用于计算神经网络中各个参数对损失函数的偏导数。 在深度学习中&#xff0c;我们通常使用一个损失函数来衡量模型的预测结果与真…