一、初始化项目

 

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

运行,vue init simulatedgreg/electron-vue 项目名称

1 vue init simulatedgreg /electron-vue  admin

  

这里的项目名称是“admin” 

如果没有安装vue脚手架,请查看《spring boot + vue + element-ui全栈开发入门——windows开发环境》 

 

 vue+electron开发桌面应用程序 随笔 第1张

 

一路回车

 

 然后运行npm install来安装依赖,运行方式和之前一样。

如果遇到run dev或者run build的时候出错,可能是因为国内的网络下载“electron-v1.8.3-win32-x64.zip”出错,这时,你需要设置npm的代理:

1 2 npm config  set  proxy http: // 服务器IP或域名:端口号 npm config  set  https-proxy http: // 服务器IP或域名:端口号

  

如果需要用户名密码:

1 npm config  set  proxy http: // 用户名:密码@服务器IP或域名:端口号
npm config set https-proxy http://用户名:密码@服务器IP或域名:端口号

  

设置回原库

1 npm config  set  registry http: //registry .npmjs.org

 

也可以使用yarn。

1 npm  install  -g yarn

  

安装依赖、开发模式运行和编程的命令分别是:

1 2 3 yarn  install yarn run dev yarn run build

  

 

项目构建完毕后,结构如下图所示:

vue+electron开发桌面应用程序 随笔 第2张

和之前项目区别是,main是用于桌面程序的代码,render是用于渲染的代码。我们只需要在render文件夹里写代码就可以。

 

开发模式运行:

1 npm run dev

  

vue+electron开发桌面应用程序 随笔 第3张

 

 

二、代码编写

 

 参照《spring boot + vue + element-ui全栈开发入门——集成element-ui》安装所需的依赖

 

1 2 3 cnpm  install  --save element-ui cnpm  install  --save-dev node-sass cnpm  install  --save-dev sass-loader<br>cnpm  install  --save font-awesome

  

 

 参照《spring boot + vue + element-ui全栈开发入门——前端列表页面开发》的代码如下:

 

入口文件:

vue+electron开发桌面应用程序 随笔 第4张  main.js

其中 axios.defaults.baseURL = 'http://localhost:18080' 是设置后端项目URL,而这可以根据具体情况写到配置文件中,开发环境调用开发环境的配置,生产环境调用生产环境配置。

 

路由文件:

vue+electron开发桌面应用程序 随笔 第5张  router/index.js

 

 主页面:

vue+electron开发桌面应用程序 随笔 第6张  Main.vue

 

会员数据列表页面:

vue+electron开发桌面应用程序 随笔 第7张  Member.vue

 

结构如下图所示:

vue+electron开发桌面应用程序 随笔 第8张

 

 

还有,在运行之前,我们需求修改src/main/index.js的配置:

vue+electron开发桌面应用程序 随笔 第9张
function createWindow() {
  /**
   * Initial window options
   */
  mainWindow = new BrowserWindow({
    height: 563,
    useContentSize: true,
    width: 1000,
    webPreferences: {
      webSecurity: false
    }
  })
vue+electron开发桌面应用程序 随笔 第10张

 

其目的是为了实现js跨域。

 

运行之前项目的后端项目《spring boot + vue + element-ui全栈开发入门——spring boot后端开发》:

1 2 mvn package java -jar target /demo .jar

  

vue+electron开发桌面应用程序 随笔 第11张

 

运行项目,效果如下:

vue+electron开发桌面应用程序 随笔 第12张

 

 

 

二、生成安装包

 

1 npm run build

 

vue+electron开发桌面应用程序 随笔 第13张  

 

如提示缺少vue组建,是因为registry的问题,因为国内taobao镜像没有Electron的依赖环境。所以需要设置回默认的 registry,并使用设置proxy的方式下载依赖环境。

如果提示“icon source "build/icons/icon.ico" not found”

就把“icons”加到build目录下,下载icons请点击链接,根据具体情况修改icons。

vue+electron开发桌面应用程序 随笔 第14张

生成好后,出现“admin Setup 0.0.0.exe”的文件,即安装程序。

我运用这个安装程序后,打开刚刚开发好的程序,效果如图所示:

vue+electron开发桌面应用程序 随笔 第15张

 

vue+electron开发桌面应用程序 随笔 第16张vue+electron开发桌面应用程序 随笔 第17张

 

发现,虽然只用到了一些前端技术,但已经能够开发出桌面应用了。小时候,老师说:“学好数理化,走遍天下都不怕”。而现在是:“学会了node,任何平台的前端都不怕”。

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄