Electron笔记

时间:2023-03-08 16:06:12

一个能让你用Web技术开发桌面应用的开源项目。这里做一个笔记(非正式文章):

官网地址:http://electron.atom.io/

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作为开发插件的语言。