一个能让你用Web技术开发桌面应用的开源项目。这里做一个笔记(非正式文章):
API相关
Electron提供的主进程接口、渲染进程接口、共用接口等。
Process(进程):继承NodeJS的process模块,增加属性和方法、事件。
Chrome 命令行开关 :Chrome相关的配置。
<webview> Tag :单独的进程中运行(与iframe相比),并增强很多地方,比iframe好用。
window.open相关接口。
主进程接口
自动更新
热键
app:应用接口
BrowserWindow:窗口
dialog:选择文件目录窗口
ipc:主进程与渲染进程的异步通信
Menu:提供菜单栏和右键菜单(这个不错)
powerMonitor:监听电源状态变化
powerSaveBlocker:阻止进入低功耗睡眠模式
protocol:注册自定义的协议,拦截现有协议的请求
session:管理浏览器会话,Cookie,缓存,代理服务器设置等
Tray:托盘
渲染进程接口
ipc:渲染进程与主进程的异步通信
webFrame:一些当前页面的设置接口
剪贴板:重点是可以创建NativeImage,设置图片到剪贴板(某些目录不行)。
共用接口
崩溃日志接口
nativeImage:一个本地图片对象
screen:屏幕尺寸,显示器,光标位置等信息
shell:以默认应用程序打开文件或URL
js调用方式
主进程 :跟写NodeJS脚本一样。
渲染进程:跟写普通Web页面一样,除了NodeJS模块代码。
插件拓展
这里我觉得Electron最聪明的是,选取了大众的NodeJS,而不是Go或Python作为开发插件的语言。