electron 官方提供模块简要说明
可快速浏览Electron提供的模块对应作用作用
系统文档
主进程可用模块
1、app
整个应用程序模块,控制你的应用程序的事件生命周期。
例如:可监听应用启动等事件。
2、autoUpdater
使应用程序能够自动更新、应用如需自动更新功能时,直接使用此模块可快速搭建自动更新功能。
3、BrowserView
BrowserView 被用来让 BrowserWindow 嵌入更多的 web 内容。
它就像一个子窗口,除了它的位置是相对于父窗口。
这意味着可以替代webview标签。
简单来说,就是窗口中可在嵌套进入窗口。
4、BrowserWindow
创建浏览器窗口。
可控制窗口大小、最大化、最小化以及可监听窗口相关事件等。
5、contentTracing
从Chromium的内容模块收集跟踪数据,以查找性能瓶颈和缓慢的操作。
用于内容追踪
6、dialog
dialog 模块提供了api来展示原生的系统对话框,例如打开文件框,alert框,所以web应用可以给用户带来跟系统应用相同的体验.
7、globalShortcut
可以便捷的为您设置(注册/注销)各种自定义操作的快捷键。
使用此模块注册的快捷键是系统全局的(例如QQ截图那种)。
8、ipcMain
ipc通讯模块,用来与渲染进程进行通讯
9、menu
创建原生应用菜单和上下文菜单。
可设计窗口菜单、右键菜单等。
10、menuItem
添加菜单项到应用程序菜单和上下文菜单中。
11、net
使用Chromium的原生网络库发出HTTP / HTTPS请求。
net 模块是一个发送 HTTP(S) 请求的客户端API。 它类似于Node.js的HTTP 和 HTTPS 模块 ,但它使用的是Chromium原生网络库来替代Node.js的实现,提供更好的网络代理支持。
下面是一个非详尽的列表, 用于说明为什么使用 net 模块而不是原生Node. js 模块:
- 系统代理配置的自动管理, 支持 wpad 协议和代理 pac 配置文件。
- HTTPS 请求的自动隧道。
- 支持使用basic、digest、NTLM、Kerberos 或协商身份验证方案对代理进行身份验证。
- 支持传输监控代理: 类似于Fiddler代理,用于访问控制和监视。
12、netLog
记录会话的网络事件。记录网关日子文件等。
13、powerMonitor
监视电源状态的改变。
系统挂起、电池电量事件等等
14、powerSaveBlocker
阻止系统进入低功耗 (休眠) 模式
15、protocol
注册自定义协议并拦截基于现有协议的请求。
16、session
检索(获取)有关屏幕大小、显示器、光标位置等的信息。
17、systemPreferences
获取系统参数信息。
18、TouchBar
为原生macOS应用创建TouchBar布局。
18、Tray
用一个 Tray 来表示一个图标,这个图标处于正在运行的系统的通知区 ,通常被添加到一个 context menu 上.。
在windows上,就为右下脚系统统治区的图标,可对其监听右键以及点击事件。
19、webContents
webContents 是一个 事件发出者.
它负责渲染并控制网页,也是 BrowserWindow 对象的属性.一个使用webContents 的例子:
渲染进程可用模块
1、desktopCapturer
desktopCapturer 模块可用来获取可用资源,这个资源可通过 getUserMedia 捕获得到.
2、ipcRenderer
ipcRenderer 模块是一个 EventEmitter 类的实例. 它提供了有限的方法,你可以从渲染进程向主进程发送同步或异步消息. 也可以收到主进程的相应.
3、remote
remote 模块提供了一种在渲染进程(网页)和主进程之间进行进程间通讯(IPC)的简便途径。
- 简单来说就是通过 remote模块渲染进程就可以间接使用主进程的模块。
4、weFrame
webFrame 模块允许你自定义如何渲染当前网页。
- 例如放大当前页面要300%。
主进程与渲染进程均可用的模块
1、clipboard
clipboard 模块提供方法来供复制和粘贴操作
2、crashReporter
开启发送应用崩溃报告.
3、nativeImage
在 Electron 中, 对所有创建 images 的 api 来说, 你可以使用文件路径或 nativeImage 实例. 如果使用 null ,将创建一个空的image 对象.
4、shell
shell 模块提供了集成其他桌面客户端的关联功能