Electron基本概念

来源:互联网 发布:数控编程员招聘 编辑:程序博客网 时间:2024/05/16 01:39

electron-banner

主进程(Main Process)

package.json中的main指定的脚本是主进程。主进程主要负责:

  • 创建Web页面(BrowserWindow实例)并管理Web页面;
  • 负责进程间通信;
  • 处理系统事件;

渲染进程(Renderer Process)

每一个Web页面都运行在各自的进程中,这里的进程就是渲染进程。Electron可以在Web页面中使用Node.js APIs与底层操作系统交互,这一点非常了不起,也是Electron应用于桌面应用开发的主要价值(我可能更关注的是通过Node.js访问操作系统硬件设备的能力)。

特点:

  • 渲染进程之间是隔离的;
  • 每一个渲染进程只关心自己的Web页面;
  • 在Web页面中不允许调用和本地GUI相关的APIs;
  • 如果Web页面需要执行GUI操作,则必须由渲染进程请求主进程代为执行;

注意:在通常的浏览器中,Web页面是运行在沙箱环境中,不允许访问本地资源(应该是处于用户数据安全性考虑)。

进程间通信

显然,这里的进程间通信包含两种情形:

  • 主进程和渲染进程通信:
    - ipcRenderer
    - ipcMain
    - remote
  • 渲染进程之间通信:share data between web pages

应用结构

一般来说,Electron app的结构是这样的:

your-app/├── package.json├── main.js└── index.html

package.json的格式与Node模块中的格式完全一样(从某种程度上看,Electron app也是一个Node模块,但是只能通过Electron执行,而不是Node执行)。

main.js则是主进程脚本。index.html就是应用的UI。

参考链接

  • Quick Start
0 0
原创粉丝点击