标签 Electron 下的文章

在说Electron进程通信的时候,先说一下Electron中的两种进程:主进程和渲染进程。

主进程通过创建 BrowserWindow 实例来创建网页。 每一个 BrowserWindow 实例在其渲染过程中运行网页,当一个BrowserWindow 实例被销毁时,对应的渲染过程也会被终止。简单来说,一个客户端就是一个主进程。

渲染进程只能管理相应的网页,一个渲染进程的崩溃不会影响其他渲染进程。渲染进程通过 IPC 与主进程通信在网在页上执行 GUI 操作。 出于安全和可能的资源泄漏考虑,直接从渲染器进程中调用与本地 GUI 有关的 API 受到限制。简单来说,一个页面就是一个渲染进程。

注意:主进程管理所有网页及其对应的渲染进程

- 阅读剩余部分 -

为啥会有这个奇葩的需求呢?其实这个需求还是有很多场景存在的!

例如我在做的可视化平台这个产品,是分WEB版和Electron客户端,使用的都是一套Vue的代码,WEB版是方便线上开发使用,Electron是方便离线使用(离线的时候读取本地数据,在线的时候拉取服务端数据)。在WEB端,我需要给用户一个下载Electron端的地址,但是我在Electron端的时候,就不希望在显示这个链接,所以就需要做一个客户端的检测!对,就是userAgent检测!

var userAgent = navigator.userAgent.toLowerCase();
if (userAgent.indexOf(' electron/') > -1) {
   // Electron-specific code
}

通过上面的代码,就可以检测到现在代码是在Electron端运行还是在WEB端运行,我本地使用的是Electron 9,可以正常使用。

最近研究Electron,涉及到了自动更新,网上教程也不少,但是好多都不可用了,经过了2天的摸索,终于搞定了菜单手动更新或者偷摸自动更新安装。因为我没有MAC,所以这篇文章只针对Windows系统,等我搞到了MAC,我再来一篇关于MAC的文章!

- 阅读剩余部分 -

最近项目中在逐步的尝试使用Vue+Electron做一些客户端,其中就有一个这样的需求:用户在安装完客户端后,需要运维人员把每个电脑上的客户端做不同的配置,也就是说,需要有一个配置文件的存在。

现在拆分下需求细节:

  1. 给到用户的是一个exe的安装包。
  2. 统一的安装包,但是不同机器配置可以修改。
  3. 配置文件应该在安装后的安装目录里面,方便运维查找。
  4. 在开发的时候,就需要把这个读取的静态文件列出来,打包的时候,需要单独抽出来。

- 阅读剩余部分 -

最近消失了一个月,忙公司的一个比较好玩的项目,所以博客断更了一个月。为了证明我是真的在忙,截一个图:

2020-10-15T00:45:54.png

这个项目,后期要上Electron,所以就研究了下自动打包,这次就分享下自动打包的,如果对Action不明白的,可以看我之前的文章,我就不在详细的说了。

- 阅读剩余部分 -