Electron 的工作原理

Electron 获取在您的 package.json 文件中定义的主文件并执行它。 此主文件创建应用程序窗口,其中包含呈现的网页以及与操作系统的本机 GUI(图形用户界面)的交互。

当您使用 Electron 启动应用程序时,会创建一个Main 主进程。 该主进程负责与操作系统的本机 GUI 进行交互。 它会创建应用程序的 GUI。

仅启动主进程不会为您的应用程序的用户提供任何应用程序窗口。 这些是由主文件中的主进程使用 BrowserWindow 模块创建的。 然后每个浏览器窗口运行它自己的Renderer 渲染进程。 渲染器进程获取一个 HTML 文件,该文件引用通常的 CSS 文件、JavaScript 文件、图像等,并将其渲染到窗口中。

主进程可以通过 Electron 中直接可用的模块访问本机 GUI。 桌面应用程序可以访问所有 Node 模块,例如用于处理文件的文件系统模块、进行 HTTP 调用的请求等。


Main 和 Renderer 进程之间的区别

主进程通过创建 BrowserWindow 实例来创建网页。 每个 BrowserWindow 实例在其自己的渲染器进程中运行网页。 当一个 BrowserWindow 实例被销毁时,相应的渲染器进程也会终止。

主进程管理所有网页及其相应的渲染器进程。 每个渲染器进程都是隔离的,只关心其中运行的网页。