基于Vue+Electron构建桌面应用程序实践

使用Vue+Electron构建跨平台桌面应用实战
本文介绍了如何使用Electron和Vue.js构建跨平台桌面应用程序,包括安装Electron-vue模板,理解应用结构,进行API调用,打包应用等步骤。通过实例展示了如何展示天气数据并进行UI美化。尽管打包后的文件较大,但适合需要独特界面且不介意性能和文件大小的项目。

Electron 是由 GitHub 开发的开源库,用于构建拥有 HTML、CSS 和 JavaScript 的跨平台桌面应用程序。Electron 通过把 Chromium 和 Node.js 组合到一个运行时来实现这一点,并且可以为 Mac、Windows 和 Linux 打包应用程序 。

为了快速入门,我使用了 Greg Holguin 的 electron-vue 样板。它给开发人员提供了 vue-cli scanffolding、常见的 Vue 插件、打包器、测试、开发工具和其他功能。

我们要构建什么?

我们要构建一个跟上一篇文章中所述的一样的应用程序,基于 OpenWeatherMap API 的该应用程序用来查看用户所选择城市的天气情况。

如果只想查看 Electron 支持的应用程序最终代码,请点击这里:

https://github.com/NataliaTepluhina/Vue-Desktop-App/tree/electron

安装

Electron-vue 样板是作为 VueCLI 2.x 的模板构建的,包括自定义应用程序的选项。因此,需要进行全局安装:

npm install -g vue-cli

如果喜欢用 VueCLI 的最新版本,就需要安装全局网桥:

npm install -g @vue/cli @vue/cli-init

然后,初始化你的项目:

vue init simulatedgreg/electron-vue weather-app

这将启动一个安装项目,其中包括需要你做出的几个选择。

其中很酷的是,如果需要一些常用的插件和库,比如 axios,可以在安装过程中选择它们。

几乎所有的选择都很明确,但是有一个问题:

我决定搜索一下,在 StackOverflow 上找到了一个有用的线索。根据这个线索,看起来 electron 构建器(electron-builder)更适合我,因此,我就改用它了。

设置项目后,需要打开应用程序所在的文件夹,运行 npm install 或 yarn install,现在我们准备好了。

了解应用程序结构

安装完成后,可以在 src 中看到两个文件夹 main 和 renderer,Electron 主进程需要用到第一个。

根据 electron-vue 的文档,在 Electron 中运行 package.json 主脚本的进程被称为主进程。在主进程中运行的脚本可以通过创建 web 页面来显示 GUI。

在 main 文件夹中有两个文件:index.js 和 index.dev.js。第一个是你的应用程序的主文件,是 electron 启动用的文件。它也被用做 webpack 的生产入口文件。所有主要的流程工作都应该从这里开始。

而 index.dev.jsis 专门用于开发,因为它安装了 electron-debug 和 vue-devtools。在开发应用程序时,可以不用理睬它。

另外,渲染器(renderer)进程需要 renderer 文件夹。

由于 Electron 使用 Chromium 来显示 web 页面,因此也用到了 Chromium 的多进程架构。Electron 中的每个 web 页面都在自己的进程中运行,这些进程被称为渲染器进程。

正如你可能注意到的是,它是个“正常的”Vue 应用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值