发现网上的教程大部分都是vue2.x目录结构不太一样
还有就是将一些问题整合在一起

傻瓜式教程

步骤一

下载electron的demo项目

electorn GitHub
下载demo electron-quick-start

步骤二

运行demo项目

用你的ide打开demo项目 在项目根目录下

npm install
npm start

注意是根目录

执行成功界面

步骤三

在原vue项目里安装相关依赖

其中electron-packager是打成exe文件的插件

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

根目录下的vue.config.js文件

在项目根目录下新建 preload.js,内容可以为空

主要用来在创建桌面窗口前定义一些window全局变量。可根据项目自行定义。如:window.isElectron = true
在项目中进行判断是否为桌面程序打开,可以调用electron的一些api

将步骤二中的main.js拷贝到项目根目录下,并更名为electron.js

更新electron.js文件里的路径为vue项目生成的静态资源文件index.html

vue项目package.json文件中增加一条指令

"electron_dev": "npm run build && electron electron.js"

执行npm run build 生成dist目录
执行npm run electron_dev 启动 electron
即可看到生成的应用程序 但是我失败了hahah

但是这不重要 并不影响我继续做下去

步骤四

打包exe文件

npm run electron_dev 失败了没关系 直接打包成exe文件执行

复制electron.jspreload.jsdist目录中,并注意修改路径


复制demo例子中的package.jsondist目录中,注意修改路径

在项目的package.json中(注意不是dist下的package.json)为之前下载好的electron-packager,增加一条启动命令

"electron_build": "electron-packager ./dist untilCloud-07 --platform=win32 --arch=x64 --icon=./dist/favicon.ico --overwrite"
electron-packager <sourcedir> <appname> –platform=<platform> –arch=<arch> [optional flags…]
  • sourcedir: 资源(dist/package.json)路径,在本例中既是./dist/

  • appname: 打包出的exe名称

  • platform :平台名称(windows是win32)

  • arch: 版本,本例为x64

执行npm run electron_build,可以看到项目目录中多了一个untilCloud-07-win32-x64文件,找到里面的untilCloud-07.exe运行即可

问题集锦

请求不到服务器

问题描述:因为是前端项目,很可能会有跨域,但是设置了跨域会导致请求不正确访问不到服务器

解决方案:去除跨域,用绝对路径

页面跳转异常、背景图片未成功加载、页面空白

问题描述:能请求服务器但是发现会有页面跳转异常、背景图片未成功加载、有的页面空白

如果router/index.js中配置的默认模式是history,那么打包后就可能会发生以上异常

解决方案:删除mode或者把mode改成hash。

如果非要使用history模式的话,需要你在服务端加一个覆盖所有的情况的候选资源:如果URL匹配不到任何静态资源,则应该返回一个index.html,这个页面就是你app依赖页面。

写在最后

打包过程基本来自此链接
使用electron 将web页面(vue-cli)打包为桌面应用
问题二的解决方案来自此链接
vue+electron打包后页面空白

Vue-Cli4.x项目通过electron打包桌面应用程序相关推荐

  1. vue项目通过Electron生成桌面应用

    vue项目通过Electron生成桌面应用 一.安装 1. 把electron的官方demo下载下来 2. 安装cnpm 3. npm start 启动electron 4. 修改vue项目 5. 打 ...

  2. C#—使用InstallerProjects打包桌面应用程序

    前言 打包桌面应用程序实在是一个不常使用的东西,偶尔使用起来经常会忘东忘西的耽误时间,因此,这篇文章多以图片记录过程,也是用于备忘. 下载打包工具 C#打包桌面应用程序有很多种方法,这里介绍一种使用M ...

  3. 啥?不用安装Jre,SpringBoot项目也可以打包exe应用程序运行!

    作者:如漩涡 blog.csdn.net/m0_37701381/article/details/104163877 前言 近期做了一个前后端合并的spring boot项目,但是要求达成exe文件, ...

  4. 使用 Electron 构建桌面应用程序的介绍

    事实上的团队协作软件,Visual Studio Code - 在撰写本文时市场上最受欢迎的代码编辑器之一,以及WhatsApp的桌面版本都有一个共同点:它们都是用Electron构建的.js.随着这 ...

  5. vue项目使用electron打包成桌面应用

    打包流程详情步骤: 1.准备工作: a.win7系统则确保node版本在v12以上,electron-builder对系统或版本有要求: b.项目路径不使用中文: c.使用淘宝镜像命令代替npm管理工 ...

  6. [Phonegap+Sencha Touch] 移动开发18 Sencha Touch项目通过phonegap打包后的程序名字的问题...

    之前说过 sencha phonegap init com.pushsoft.myapp MyApp 之后打包的程序安装包apk的名字是"MyApp.apk",显示在手机桌面上的程 ...

  7. 解决electron打包成应用程序问题总结(详细)

    一.打包流程 1.定位到当前项目目录下,输入命令: npm install --save-dev electron-packager 将electron-package包安装到在项目下面, 在pack ...

  8. electron打包生成exe程序

    一.步骤 1.package.json中添加配置如下: "scripts": {"package":"electron-packager . demo ...

  9. mac nw.js 打包桌面应用程序

    参考https://segmentfault.com/a/1190000007564694和https://zhuanlan.zhihu.com/p/20070166 1.mac电脑下打包,需要先下载 ...

最新文章

  1. Android Volley彻底解决(三),定制自己Request
  2. [驱动注册]platform_driver_register()与platform_device_register()
  3. 李永乐线性代数手写笔记-线性方程组
  4. IQueryable接口与IEnumberable接口的区别
  5. 前端:HTML/03/超级链接,绝对地址URL,相对地址URL,特殊链接
  6. android插件数字,Android自定义控件实现带文本与数字的圆形进度条
  7. JdbcTemplate 排序查询结果不一致问题
  8. 软件开发 —— 过程资产与交付件
  9. 二分法求函数零点:(递归方法和非递归方法)
  10. 程序员与黑客的故事 程序员应有的工作素质
  11. 多路电源管理芯片(记录)
  12. 点到点法式平面投影点的计算
  13. babel-polyfill解决vue框架项目IE无法打开问题
  14. 小白常用的Widows10实用功能,让你更好掌控你的电脑。
  15. 排列熵(permutation entropy)
  16. 小米手机:雷布斯的米饭刚下锅
  17. 男人:别光着上身睡觉
  18. YOLOv5 对决 Faster RCNN,谁赢谁输?(转载)
  19. 【Bandit Algorithms学习笔记】UCB算法的理论证明
  20. 李宏毅老师《机器学习》课程笔记-4.2 Batch Normalization

热门文章

  1. 【转】不同版本的Linux介绍
  2. linux ks脚本,kickstar-KS文件和语法解析
  3. 2022.01.14_Java学习总结_常用API_String、StringBuffer和StringBuilder、System、Date、Random
  4. 百万英雄、芝士超人、百万赢家、冲顶大会作弊神器
  5. 什么是mysql的索引_什么是索引?mysql目前索引有哪些?
  6. X86逆向6:易语言程序的DIY
  7. 系统集成项目管理工程师(软考中级)—— 第二十四章 收尾管理、知识产权、法规标准规范 笔记分享
  8. wordpress锚链接_如何“轻松”在WordPress中添加锚链接(逐步操作)
  9. 江苏省计算机二级考试题型vb,江苏省计算机二级考试vb程序设计复习题
  10. 循序渐进学运维-shell脚本实战专栏