前言通过Electron技术+python构建桌面应用实际上非常麻烦,需要使用python构成后端并打包,然后使用Vue作为前端,还要用Electron打包。但是好处就是可以同时得到来自前端UI框架的高颜值支持以及python海量轮子的快速实现(以及较为完善的多端部署功能),项目可以快速扩展成全平台应用。所以我在这个博客里记录了Python+VueElectron构建桌面应用的方法。(其实单纯使用node.js进行开发可能会更快,毕竟不用写后端api,但是python的社区有很多超级方便的库,可以节约大量的时间,比较起来还是写api来得节省时间)Step1.新建Vue项目vuecreatevu
在electron中进程使用ipcMain和ipcRenderer模块,通过开发人员定义的“通道”传递消息来进行通信。新的版本中electron推荐使用上下文隔离渲染器进程进行通信,这种方式的好处是无需在渲染进程中直接使用ipcRenderer发送消息,这种在渲染进程中调用nodejs对象的方法对于渲染进程有侵入性。当我们使用vue或者其他前端框架开发界面时,上下文隔离方式使用起来更加方便,基本上感受不到electron对前端框架的影响。一、Electron进程通信上下文隔离的进程间通信方式有四种:1.渲染器进程到主进程(单向)要将单向IPC消息从渲染器进程发送到主进程,您可以使用ipcRen
在electron中进程使用ipcMain和ipcRenderer模块,通过开发人员定义的“通道”传递消息来进行通信。新的版本中electron推荐使用上下文隔离渲染器进程进行通信,这种方式的好处是无需在渲染进程中直接使用ipcRenderer发送消息,这种在渲染进程中调用nodejs对象的方法对于渲染进程有侵入性。当我们使用vue或者其他前端框架开发界面时,上下文隔离方式使用起来更加方便,基本上感受不到electron对前端框架的影响。一、Electron进程通信上下文隔离的进程间通信方式有四种:1.渲染器进程到主进程(单向)要将单向IPC消息从渲染器进程发送到主进程,您可以使用ipcRen
ElectronElectron是一个使用JavaScript、HTML和CSS构建桌面应用程序的框架安装在使用Electron进行开发之前,需要安装Node.js,可以在终端输入以下命令输出了Node.js和npm的版本信息:node-vnpm-v没有安装的话,可以点击此处的安装教程接下来就是安装Electron:我们可以两种安装方式全局安装npminstallelectron-g【加g是全局安装,自动添加到环境变量中】可以通过输入以下命令,弹出类似浏览器的程序,来验证安装成功:electron如果遇到npm安装Electron很慢或者出错可以使用淘宝镜像安装:npminstall-gele
ElectronElectron是一个使用JavaScript、HTML和CSS构建桌面应用程序的框架安装在使用Electron进行开发之前,需要安装Node.js,可以在终端输入以下命令输出了Node.js和npm的版本信息:node-vnpm-v没有安装的话,可以点击此处的安装教程接下来就是安装Electron:我们可以两种安装方式全局安装npminstallelectron-g【加g是全局安装,自动添加到环境变量中】可以通过输入以下命令,弹出类似浏览器的程序,来验证安装成功:electron如果遇到npm安装Electron很慢或者出错可以使用淘宝镜像安装:npminstall-gele
这里写自定义目录标题简介安装打包更多配置配置vue项目vue-vite的打包单页面应用vue-vite的打包多页面应用多平台打包mac、win、lunix等forge配置项electron-builder配置项简介文章更新与2023年2月12日。【打包需要连接外网的资源,需要翻墙。翻不了墙的可以自己查找一下解决方案】electron官网:https://www.electronjs.orgelectronforge官网:https://www.electronforge.ioelectronbuilder官网:https://www.electron.build/环境要求:git、node@1
这里写自定义目录标题简介安装打包更多配置配置vue项目vue-vite的打包单页面应用vue-vite的打包多页面应用多平台打包mac、win、lunix等forge配置项electron-builder配置项简介文章更新与2023年2月12日。【打包需要连接外网的资源,需要翻墙。翻不了墙的可以自己查找一下解决方案】electron官网:https://www.electronjs.orgelectronforge官网:https://www.electronforge.ioelectronbuilder官网:https://www.electron.build/环境要求:git、node@1
vivo互联网前端团队-YangKun一、背景在团队中,我们因业务发展,需要用到桌面端技术,如离线可用、调用桌面系统能力。什么是桌面端开发?一句话概括就是:以Windows、macOS和Linux为操作系统的软件开发。对此我们做了详细的技术调研,桌面端的开发方式主要有Native、QT、Flutter、NW、Electron、Tarui。其各自优劣势如下表格所示:我们最终的桌面端技术选型是Electron,Electron是一个可以使用Web技术来开发跨平台桌面应用的开发框架。其技术组成如下:Electron=Chromium+Node.js+NativeAPI各技术能力如下图所示:整体架构如
vivo互联网前端团队-YangKun一、背景在团队中,我们因业务发展,需要用到桌面端技术,如离线可用、调用桌面系统能力。什么是桌面端开发?一句话概括就是:以Windows、macOS和Linux为操作系统的软件开发。对此我们做了详细的技术调研,桌面端的开发方式主要有Native、QT、Flutter、NW、Electron、Tarui。其各自优劣势如下表格所示:我们最终的桌面端技术选型是Electron,Electron是一个可以使用Web技术来开发跨平台桌面应用的开发框架。其技术组成如下:Electron=Chromium+Node.js+NativeAPI各技术能力如下图所示:整体架构如
发现问题通过vue建立的项目使用electron-builder打包(不会eletron打包vue项目的看这里)出exe后发现名字就直接是项目文件夹的名字,但此时想自定义汉字名称,通过尝试直接修改package.json中的name后发现此法仅限于修改为英文名称,汉字会报错无法打包。踩坑过程在网上翻阅后发现有人直接在package.json中这样添加build:"scripts":{//...},"build":{"productName":"xxx","appId":"xxx",//...},这其实是个大坑,我尝试后发现会报错无效配置:InvalidConfigurationError:'b