1、Electron支持的平台:
OS XWindows
Linux
2、一个标准的electron app包含的结构:
Windows 或是 Linux中:electron/resources/app
|_package.json
|_main.js
|_index.html
3、electron程序打包:
一般使用asar来进行打包,electron中一般包含两种API:Node.js和Chromium提供的Web API
Node API如fs.readFile
4、使用Native Node模块
安装Native模块的三种方式:1)electron-rebuild
2)使用npm
3)使用node-gyp
5、测试主进程
window下面的DevTools只能测试渲染进程,为了测试主进程可以使用--debug或是--debug-brk分支也可以使用node-inspector进行测试6、electron简述
electron可以让你使用javascript来创建桌面应用,可以将其理解为Node.js的一个变体,它提供了丰富的运行时访问Native的API接口。但是electron并不是一个GUI库,相反的,electron使用web页面作为它的GUI,所以可以将它看做是一个小的Chromium浏览器。在Electron中运行package.json和main脚本的进程成为主进程,可以在主进程中通过创建Web页面来显示GUI。electron使用Chromium的多进程机制来渲染页面,每个页面拥有一个自己的进程,该进程成为渲染进程。在electron中用户可以通过Node.js的API跨过网页运行的沙箱去访问更为底层的系统应用。主进程通过使用BrowserWindow实例创建页面,每个BrowserWindow都是在自己的渲染进程中运行。当一个BrowserWindow实例被销毁的时候对应的渲染进程也被销毁了。主进程管理着所有的网页和它们对应的渲染进程,每个渲染进程只关心自己的网页。渲染进程若是想访问GUI操作,需要向主进程发出请求。在electron中主进程和渲染进程之间有几种交互方式:ipcRenderer和ipcMain来发送messages。
7、一个简单而完整的Electron app
package.json文件的格式和Node的模块是一样的,main.js是app启动脚本,将会运行在主进程中。如果main没有出现在package。json中,electron将会尝试装载index.jsmain.js需要创建window界面并处理系统事件运行electron程序:
可以先用npm装上electron-prebuilt,进入app的root目录
执行electron .
8、桌面环境的整合
关于Notification通知:HTML5的API只能是在渲染进程中使用,Windows,Linux和OS X中都支持通知机制。
其他的功能看具体的桌面环境进行相应的配置
9、在线和离线事件监测
electron主进程中并不能利用HTML5中的navigator对象进行事件探测,但是可以利用electron中的交互工具将事件监测结果反馈给主进程。使用ipcMain和ipcRender进行事件信息的传递10、electron中API概要
electron支持所有的Node.js的内建模块,也支持第三方的node模块,包括native模块。electron同时提供了额外的native内建模块可以用于开发原生的桌面应用。一些模块只能在主