pythonelectron桌面开发案例_electron vue桌面应用入门实例
从零开始搭建,基于electron vue cli3 的桌面应用。 github
本人刚入坑,项目适合新手,客官来了轻踩。若是能遇到高手对小女子我指点一二,更是感恩不尽。
在这里你可以找到的有
从零开始搭建一个项目
使用vue-cli3搭建electron项目
简单的实现一个主线程和渲染层的交互
查到的资料大部分都是vue cli2的版本,我们来探索新的版本吧
首先新建vue项目
vue create electron-vue-example
cd electron-vue-example
npm run serve
vue项目的建立非常的简单,这里就不再巴拉巴拉了~
安装vue-cli-plugin-electron-builder
接下来就是把让我们的项目可以被打包成桌面应用,这里我们用到了[vue-cli-plugin-electron-builder] 它是一个vue cli3插件,帮你配置electron-build。
第一步,在根目录下运用下面的命令
vue add electron-builder
第二步,运行启动命令
npm run electron:serve复制代码
实现一个图片列表
我们实现一个vue列表
接下来,修改src/background.js添加一个新的窗口添加一个新的窗口给他
接下来是点击图片展示在另外一个页面,用到了通信ipcMain 模块,一边发送一边接受,通过arg来传递参数。vue点击事件里发送图片的url信息到background.js主进程,主进程监听事件,然后打开窗口传递信息到image.vue页面
background.js头部添加 ipcMain
import { app, protocol, BrowserWindow, ipcMain } from 'electron'复制代码
background.js最后添加
//ipcMain 模块有如下监听事件方法:
// 监听 组件@/compontents/ImageList.vue methods:openImage下的ipcRenderer.send("toggle-image", image)
// render 发送消息,main 接收消息
//
ipcMain.on('toggle-image', (event, arg) => {
imageWindow.show()
// 拿到消息后再发送给@/views/image.vue中的 ipcRenderer.on('image'...
imageWindow.webContents.send('image', arg)
})复制代码
实现菜单配置
在@/compontents/ImageList.vue中添加方法
initMenu() { // 初始化菜单
const menu = Menu.buildFromTemplate([
{
label: "文件",
submenu: [
{
label: "设置",
accelerator: "CmdOrCtrl+,",
click: () => {
ipcRenderer.send("toggle-about");
}
},
{ type: "separator" },
{
label: "退出",
accelerator: "CmdOrCtrl+Q"
}
]
},
{
label: "演示菜单",
submenu: [
{ label: "菜单 1" },
{ label: "菜单 2" },
{ label: "菜单 3" }
]
}
]);
Menu.setApplicationMenu(menu);
},
主要演示这两个小功能,需要注意的一点是,路由需要用Hash,后面研究一下,怎么用history实现。第一次接触electron的同学,一定会疑惑如何主程序和渲染程序做交互,这个例子就简单的介绍了。
关于我
您可以扫描添加下方的微信并备注 Sol 加交流群,给我提意见,交流学习。
如果对你有帮助送我一颗小星星(づ ̄3 ̄)づ╭❤~
转载请联系作者!
pythonelectron桌面开发案例_electron vue桌面应用入门实例相关推荐
- Vue学习(入门实例、常用指令)-学习笔记
文章目录 Vue学习(入门实例.常用指令)-学习笔记 实例 常用指令 v-on v-bind v-for v-html v-if event v-model 双向数据绑定实现 - defineProp ...
- 基于android studio开发多人电话语音视频会议入门实例demo含app下载链接
目录 说明 视频演示 图文演示 android版本支持 相关下载 说明 这是一个相对完整的客户端+服务器端的项目,适合入门学习研究.包含android摄像头.麦克风使用权限的动态申请,控件的事件绑定, ...
- pythonelectron桌面开发案例_使用Electron开发基于Node.js的桌面应用
最近小编在查看分享资料时,发现一个可以开发跨平台桌面应用的框架--NW.js(原名:node-webkit).正当小编兴致勃勃的研究NW.js的时候,最基础的安装环节出了问题.无论用npm还是cnpm ...
- pythonelectron桌面开发案例_Web桌面应用框架1:Electron与WEB桌面应用程序开发及其它...
这几天在构思项目,研究了一下Electron,记录下来. 说起WEB桌面程序,当前最火的就是Electron了. Electron的架构用一句话总结,就是一个main.js进程加上一个或数个chrom ...
- Launcher3桌面开发-Launcher3 抽屉型桌面改造成横屏桌面
Launcher3源码地址:Launcher3-master [This tutorial was written by Ticoo] Google Launcher3默认是抽屉型的桌面,到Andro ...
- 计算机桌面运维工作案例,【桌面云案例专题】桌面云 R5问题处理指导书(For 一线服务/运维/管理员)...
关键词:FusionAccess,问题定位,指南,指导书 摘要:FusionAccess 5.0/5.1版本问题定位指导书,面向一线服务和局方运维管理人员,针对用户常见问题,提供快捷问题处理指导,适用 ...
- html5 nodejs桌面开发工具,html5fromImages-nodejs生成器入门
最近有好多需求是把一堆图片,或者一张长图转成HTML文件在客户端展示,所以想尝试自动化这一过程,简单实验了一个HTML5生成器. 功能: 根据文件夹中图片文件生成简单HTML5展示页面 安装 $ np ...
- 前端开发之走进Vue.js(入门者看过来)
Vue.js作为目前最热门最具前景的前端框架之一,其提供了一种帮助我们快速构建并开发前端项目的新的思维模式.本文旨在帮助大家认识Vue.js,了解Vue.js的开发流程,并进一步理解如何通过Vue.j ...
- php加数据库开发案例,PHP简单数据库操作类实例【支持增删改查及链式操作】
本文实例讲述了PHP简单数据库操作类.分享给大家供大家参考,具体如下: 在进行项目开发时,数据库是必不可少的东西了.但是很多时候却又对数据库SQL语句的繁杂而感到头疼.提供一个我自己使用的数据库操作类 ...
最新文章
- 全网最详细之一网打尽数据结构中与树相关的算法
- 淘淘商城 @Autowired 装配失败
- Python标准库collections模块的Counter类
- 如何实现远程登陆,如何实现远程桌面
- node.js stream
- 实现发送邮件动态html内容的几种思路
- python100以内奇数累加和_用python脚本来计算100以内奇数或者偶数之和
- 利用addr2line命令定位backtrace的Error行数
- VScode 英文翻译成中文插件(英语差的福音)
- 2018年的好书基本都在这了,你一共读过几本?
- 计算机碎片整理的作用,经常做磁盘碎片整理的好处
- Faulty Odometer(进制转化)
- Android 版本号及对应的版本名
- 使用eclipse创建一个web登录界面项目
- 保护眼睛的颜色和各种背景颜色设置方法
- 【前后端分离】前台多表联查
- Probabilistic Foot Contact Estimation by Fusing Information from Dynamics and Differential/Forward K
- element ui table封装组件,render 函数动态事件设置
- 分享适合女生做的六个兼职项目,在家做副业,看看有没有你感兴趣的
- 2020身高体重标准表儿童_【宝宝身高体重标准表】儿童身高体重标准表2020、2019_身高体重标准表_亲子百科_太平洋亲子网...
热门文章
- python整数类型提供了4种进制表示_关于整数类型的 4 种进制表示,哪个选项的描述是正确的?_学小易找答案...
- 微信小程序之通过Canvas生成图片保存到手机相册
- 计算机技能大赛文字录入试题,《文字录入与排版》试题.doc
- php stortime,文件存储 | 综合话题 | Laravel 5.3 中文文档
- Android开发之高斯模糊效果三行代码搞定附带CSDN源码请导入module
- c语言作业题五六章答案,C语言程序设计五六章习题和课堂测试答案.doc
- 微信小程序走出国门,国际化将指日可待?
- 《CUDA高性能并行计算》----2.2 需要知道的CUDA API和C语言拓展
- Python创建简单的HTTP服务
- Java Date Time 教程