
JS全栈-Electron
文章平均质量分 88
JS全栈-Electron
uikoo9
这个作者很懒,什么都没留下…
展开
-
Electron实战QZip-03:渲染进程开发
【前言】上一节讲了electron应用的主进程开发部分,本节继续渲染进程的开发Electron实战QZip-02:主进程开发_uikoo9的博客-优快云博客【渲染进程开发模式选择】上节讲了使用qiao-electron-cli init生成的代码项目结构qzip,主项目,主要是构建mac应用和dmg打包,以及提供dev的electron环境|--qzip-pack,打包相关的配置文件和图标等|--qzip-src |--qzip-main,主...原创 2022-05-04 22:23:34 · 781 阅读 · 0 评论 -
Electron实战QZip-02:主进程开发
【前言】上一节Electron实战QZip-01:初始化项目&打包应用_uikoo9的博客-优快云博客主要讲了使用qiao-electron-cli - npm的相关命令1.init,生成一个electron的项目2.icon,生成mac下icns图标3.packmac,生成mac应用4.packdmg,生成dmg安装包5.config文件介绍本节可以QZip这个应用的主进程开发【qiao-electron】electron主进程开发中有很多..原创 2022-05-03 22:43:48 · 698 阅读 · 0 评论 -
Electron实战QZip-01:初始化项目&打包应用
【前言】Electron那些事系列:Electron那些事01:起步_uikoo9的博客-优快云博客主要是介绍Electron常见的特性,从本章开始实战做一个Electron应用【QZip】第一个实战项目不能太大,还需要把之前讲的内容串起来,想来想去,做一个zip压缩和解压缩的工具吧,名字暂定QZip【qiao-electron-cli】在写Electron那些事系列过程中,抽了一个electron打包相关的工具,qiao-electron-cli - ...原创 2022-05-02 23:13:18 · 953 阅读 · 0 评论 -
Electron那些事11:快捷键和黑暗模式
【前言】本节讲下electron下设置快捷键和mac黑暗模式的使用【快捷键设置】快捷键设置比较简单,下面是全局快捷键设置globalShortcut.register(shortcutKey, shortcutCallback);传入快捷键名称,和快捷键回调即可这里需要在app退出时释放掉全局快捷键,如下 app.on('will-quit', () => { globalShortcut.unregisterAll(); });【黑暗..原创 2022-04-06 18:31:25 · 1669 阅读 · 0 评论 -
Electron那些事10:本地数据库sqlite
【前言】上一节讲了本地日志,本地数据(文件)的部分,详见:Electron那些事09:本地数据_uikoo9的博客-优快云博客虽然本地日志可以记录日志信息,本地数据可以记录简单的配置文件,但是像一些复杂的业务,需要维护一个本地数据库进行查询,本节讲一下本地数据库sqlite【sqlite】sqlite是有名的本地数据库,在很多系统中都有应用,SQLite Home Page当然也有nodejs的版本,一般配套和electron使用,sqlite3 - np...原创 2022-04-02 19:57:18 · 8963 阅读 · 4 评论 -
Electron那些事09:本地数据
【前言】electron开发桌面应用后,不可避免的要记录一些本地数据,类似web浏览器中的cookie,session,localstorage,websql,indexeddb这些本节来讲一下electron怎么记录本地数据【本地日志】Electron那些事06:本地日志和异常上报_uikoo9的博客-优快云博客这一节讲了通过log4js记录本地日志,文章内只讲了传一个filename:vq.log,但是并没有说这个日志文件会记录到那里,本节来探索一下首先回顾..原创 2022-03-30 17:06:27 · 3130 阅读 · 0 评论 -
Electron那些事08:通过preload让渲染进程支持nodejs
【前言】标题有点长,本节想讲的是如何让渲染进程支持nodejs的能力,Electron那些事04:进程通信_uikoo9的博客-优快云博客04章节讲过一种方式,通过设置如下的属性本节要讲的是另一种方式,供参考【非preload的方式】在复述一下04章节讲的方式1.主进程中,打开一个window的时候,设置这些属性 webPreferences.nodeIntegration = true; webPreferences.co...原创 2022-03-23 21:16:58 · 6483 阅读 · 3 评论 -
Electron那些事07:窗口定制
【前言】之前章节简单介绍了窗口,本节介绍一下窗口定制,Electron那些事03:渲染界面_uikoo9的博客-优快云博客【默认窗口】接之前的例子,可以看到mac上默认窗口会有一个标题栏,但是实际开发中基本没有这种默认的标题栏【无边框窗口】第一种方式是为window添加frame属性,设置为false,这样就是无边框窗口了效果如下【设置标题栏样式】上述效果可以看到左上角的关闭按钮也没有了,这个不是想要的效果另一个方式是设置标题...原创 2022-03-23 12:00:36 · 2932 阅读 · 0 评论 -
Electron那些事06:本地日志和异常上报
【前言】开发应用,绕不开本地日志,异常上报,crash分析,数据上报这些,除非就是做来玩一下,本节讲一下常见的本地日志和异常上报。【本地日志】日志,不管是本地日志,还是日志框架,还是日志平台都有非常成熟的体系了,electron应用记录日志,直接使用log4js即可,详见:log4js-node by log4js-node用法也比较简单,可以自己看看文档,主要有这些appender按date记录日志,按文件大小记录等这里选择datefile的方式记录,代码类..原创 2022-03-19 12:59:26 · 5614 阅读 · 0 评论 -
Electron那些事05:保护源码asar
【前言】回顾之前的章节Electron那些事02:打包_uikoo9的博客-优快云博客打包应用这里还有一个优化点,本节来优化一下【对比Electron应用】对比几个electron应用的文件结构vscode,app文件夹下可以看到部分源码某网盘,app对应的位置是一个app.asar文件,无法直接打开本文应用vq,app文件夹下可以看到所有源码看到这里有几个问题1.为什么有的应用app文件夹下可以看到所有源码(相信我,不仅仅是示例的vq应..原创 2022-03-17 17:33:53 · 4409 阅读 · 0 评论 -
Electron那些事04:进程通信
【前言】接上一章,继续实现以下功能,login窗口登录成功后,关闭login,打开index窗口【进程通信】上节讲到主进程和渲染进程的区别,其实最常见的是主进程和渲染进程之间通信ipcMain,ipcMain | Electron从主进程到渲染进程的异步通信ipcRenderer,ipcRenderer | Electron从渲染进程到主进程的异步通信渲染进程login中,点击login按钮,进行校验,校验成功后通过ipc发信息给主进程,代码如下..原创 2022-03-16 19:46:13 · 2606 阅读 · 0 评论 -
Electron那些事03:渲染界面
【前言】js技术栈开发桌面端很大的优势就是ui界面开发比较快,对比原生的桌面端开发要快很多,并且基于chromium内核,支持最新的html5,css3特性,又可以开发出很酷炫的ui。总结一下就是electron开发ui界面,又快又好~【打包代码结构调整】接上一篇文章的代码结构,如下,只有src内是最终桌面应用的代码,其余的是提供electron开发环境&打包相关的代码,为了方便后续引入渲染进程相关代码,这里做一些拆分1.将src文件夹修改为electro..原创 2022-03-16 14:19:23 · 4607 阅读 · 0 评论 -
Electron那些事02:打包
【打包】接上回Electron那些事01:起步_uikoo9的专栏-优快云博客简单介绍了electron,以及做了简单demo使用electron做了一个桌面应用demo,相信大家现在最想做的事情就是将桌面应用打包后发个其他人体验,本节开始electron打包【electron-packager】官方推荐的打包工具有3个几个工具的区别后续单独写一篇文章介绍,简单的说electron-forge和electron-builder都是打包工具集功能比较多,适合想快速上...原创 2022-03-10 20:06:55 · 5658 阅读 · 0 评论 -
Electron那些事01:起步
【前言】从js说起,js最初是浏览器端的脚本,但是随着nodejs的出现,拓展了很多能力,可以开发server端的服务,后续又有electron出现,又可以开发桌面端应用(win,mac等)electron简单说就是将nodejs和chrome内核(chromium)打包到一起,抹平了os层(windows,mac,linux)的差异 ,提供一些简单的api供大家开发桌面应用类似的还有nwjs,但是nwjs更新比较慢,文档比较差,问题比较多,这里还是推荐electron来开发桌面应用..原创 2022-03-09 19:01:47 · 1342 阅读 · 0 评论