Vue+Electron实现简单桌面应用

之前一直使用C#编写桌面应用,也顺带写一些Web端应用。最近在看node时发现常用的vscode是用electron编写的,一种想吃螃蟹的念头就涌了上来。

在网上找了找electron的资料,也研究了一下官方文档,发现electron app其实就是一个chrome浏览器,UI全部都是使用web端技术编写的,因为之前一直使用Vue来写Web应用,所以自然就想到Vue+Electron的组合。

在网上找了找,居然有现成的轮子Electron-Vue,立即install使用,可是发现最后却不那么如人意,在最后build时,总是出错,后来终于发现是网络与build配置的问题。搞得人很头疼。

于是最后决定自己动手,将Vue生成的静态网页与Electron结合。

1.Vue使用webpack项目,build之后在dist文件夹中会有静态网页生成,这样生成的网页放在web容器中可以正确访问,但如果在本地直接打开引用文件路径会出错,后来发现是因为生成后的index.html与资源不在一个目录层。

修改webpack项目中config/index.js为

1 build: {
2     // Template for index.html
3     index: path.resolve(__dirname, ‘../dist/index.html‘),
4
5     // Paths
6     assetsRoot: path.resolve(__dirname, ‘../dist‘),
7     assetsSubDirectory: ‘static‘,
8     assetsPublicPath: ‘./‘,

2.使用electron-quick-start快速构建出一个electron项目,将上面生成的文件复制到electron项目的根目录下,运行项目,发现正常运行。

3.可是上一步仅仅是在dev模式下运行,这里使用electron-builder分发项目,全局安装electorn-builder后,输入electron-builder --win --ia32 --dir即可完成项目的分发。

原文地址:https://www.cnblogs.com/sonoda-umi/p/9273510.html

时间: 2024-10-09 06:59:05

Vue+Electron实现简单桌面应用的相关文章

helloworld of vue + electron 开发过程日志

helloworld 开发过程日志 helloworld of vue + electron 1. 相关技术栈 2. 安装开发环境 2.1. 安装Node.js 2.2. 使用NPM(节点包管理器)镜像 2.3. 安装vue-cli 3. hello world 3.1. 创建项目 3.2. 运行VUE项目 3.3. 安装electron 3.4. 通过electron运行VUE项目 3.5. 使用electron-builder 打包发布 4. 完善配置 5. 总结 1. 相关技术栈 Chro

angular4.0和angularJS、react.js、vue.js的简单比较

angularJS特性 模板功能强大丰富(数据绑定大大减少了代码量) 比较完善的前端MVC框架(只要学习这个框架,按照规定往里面填东西就可以完成前端几乎所有的的问题) 引入了Java的一些概念 angularJS的一些问题 性能问题[(脏检查机制)在angular中被废除了,整体性能被提升 路由问题[(使用的是第三方模块)在angular中路由器是主要的机制 作用域问题[(不能用原生的事件,想用就要调用一个方法)在angular中任何原生的事件都可以直接处理 表单验证问题[在angular中提供

基于vue.js的简单用户管理

功能描述:添加.修改.搜索过滤 效果图: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <title>简单用户管理</title> 5 <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"

Vue小白踩坑 使用vue做一个简单的todo list

前言 寒假待在家,无所事事,便开始做起了毕设,由于要写跨端应用,基础是vue,所以先攻克vue 做一个简单的todo 当然是自己做的,效率有点儿低,不过能做出来已经很不错了把 hhh 源码 本质上毕设的前端展示,也就是对一个todo-list加一个好看的ui,数据排版等等花里胡哨的东西,本质的东西还是数据的crud <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title

将现有vue项目基于electron打包成桌面应用程序

一.前言 项目本来打算采用B/S架构去做的,只是在"人群中多看了你一眼",便直接撸了. 二.使用electron集成桌面应用 本身项目是使用vue-cli开发的,在使用electron之前,需要将本身的项目打包好后打开index.html能显示网页.因为刚接触便直接拿官方demo进行打包了. 1.克隆官方demo:git clone https://github.com/electron/electron-quick-start 2.cd electron-quick-start-&g

vue学习笔记——简单的介绍以及安装(一)

学习编程需要的是 API+不断地练习^_^ Vue官网:https://cn.vuejs.org/ 菜鸟教程:http://www.runoob.com/vue2/vue-tutorial.html 1.简单的介绍 Vue.js(读音 /vju?/, 类似于 view) 是一套构建用户界面的渐进式框架. Vue 只关注视图层, 采用自底向上增量开发的设计. Vue 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件. Vue 学习起来非常简单,本教程基于 Vue 2.1.8 版

一个vue项目的简单分享

回首用vue已经2个多月了,今年7月底根据vue社区提供的api写了一个小移动端的小dom 通过这个项目也让我更深入的了解了vue(组件之间的通讯,计算属性,数据绑定.数据驱动....),用数据驱动型的框架做项目好处就是基本上不需要自己操作dom,框架会通过数据改变帮你最优的操作,也让你开发更加迅速 vue数据的更新: 获取数据(转换数据) →绑定事件→渲染dom →监听事件→改变数据(计算)→重新绑定事件→改变dom 首先vue会遍历一遍你定义的 data 然后通过 这个ES5的属性(Obje

vue.js实现简单增删效果

Vue.js 的核心是一个响应的数据绑定系统,它让数据与 DOM 保持同步非常简单.在使用 jQuery 手工操作 DOM 时,我们的代码常常是命令式的.重复的与易错的.Vue.js 拥抱数据驱动的视图概念.通俗地讲,它意味着我们在普通 HTML 模板中使用特殊的语法将 DOM "绑定"到底层数据.一旦创建了绑定,DOM 将与数据保持同步.每当修改了数据,DOM 便相应地更新.这样我们应用中的逻辑就几乎都是直接修改数据了,不必与 DOM 更新搅在一起.这让我们的代码更容易撰写.理解与维

Electron与WEB桌面应用程序开发及其它

这几天在构思项目,研究了一下Electron,记录下来. 说起WEB桌面程序,当前最火的就是Electron了. Electron的架构用一句话总结,就是一个main.js进程加上一个或数个chrome窗口,每个窗口都包含一个独立的Node.js. 这样的架构,使得这种桌面应用必须是一个(或数个)单页面应用(SPA),而这个SPA还拥有访问本地API的能力(Node.js). 一方面,程序对前端框架的依赖必然加强,想再JQuery打天下就不那么容易了:另一方面也大大加强了前端框架的能力与版图.