非常教程

Electron参考手册

指南 | Guides

词汇表 | Glossary

本页定义了电子开发中常用的一些术语。

ASAR

ASAR代表Atom Shell Archive Format。一个ASAR归档是一个简单的tar是把文本文件的到一个单一的文件格式样。电子可以从它读取任意文件,而无需解包整个文件。

ASAR格式主要是为了提高Windows上的性能而创建的... TODO

Brightray

Brightray 是一个静态库,使libchromium内容更易于在应用程序中使用。现在已被弃用,并已合并到Electron的代码库中。

CRT

C运行时库(CRT)是包含ISO C99标准库的C ++标准库的一部分。实现CRT的Visual C ++库支持本机代码开发,以及混合的本机代码和托管代码,以及用于.NET开发的纯托管代码。

DMG

Apple磁盘映像是由macOS使用的打包格式。DMG文件通常用于分发应用程序“安装程序”。电子构建者支持dmg作为构建目标。

IME

输入法编辑器。一个允许用户输入键盘上未找到的字符和符号的程序。例如,这允许拉丁键盘的用户输入中文,日文,韩文和印度文字符。

IPC

IPC代表进程间通信。Electron使用IPC在主要和渲染器进程之间发送序列化的JSON消息。

libchromiumcontent

包含Chromium Content模块及其所有依赖项(如Blink,V8等)的共享库。也称为“libcc”。

  • github.com/electron/libchromiumcontent主进程主进程,通常是一个文件命名main.js,是每个Electron应用程序的入口点。它控制应用程序的生命,从开放到关闭。它还管理本地元素,如菜单,菜单栏,Dock,托盘等。主流程负责在应用程序中创建每个新的渲染器进程。完整的Node API是内置的。每个应用程序的主进程文件都在main属性中指定package.json。这是如何electron .知道在启动时要执行的文件。另请参阅:用于Apple的Mac App Store的process,renderer processMASAcronym。有关将您的应用程序提交给MAS的详细信息,请参阅“Mac App Store提交指南”。本机模块本地模块(也称为addons在Node.js中)是用C或C ++编写的模块,可以使用require()函数将其加载到Node.js或Electron中,并且就像它们是普通的Node.js模块一样。它们主要用于提供在Node.js和C / C ++库中运行的JavaScript之间的接口。Electron支持本地节点模块,但由于Electron很可能使用与系统中安装的Node二进制文件不同的V8版本,在构建本地模块时,您必须手动指定Electron头的位置。另请参见使用本机节点模块.NSISNullsoft可脚本安装系统是Microsoft Windows的脚本驱动的安装程序创作工具。它是在免费软件许可证的组合下发布的,是InstallShield等商业专有产品的广泛使用的替代品。电子构建器支持NSIS作为构建目标.OSROff-screen rendering.processA过程是正在执行的计算机程序的一个实例。使用主和一个或多个渲染器进程的电子应用程序实际上同时运行多个程序。在Node.js和Electron中,每个正在运行的进程都有一个process目的。该对象是提供有关当前进程的信息并对其进行控制的全局对象。作为一个全局应用程序,它总是可用于应用程序,而不使用require()。另请参见:main process,renderer processrenderer process渲染器进程是应用程序中的浏览器窗口。与主进程不同,可以有多个进程,每个进程都在一个单独的进程中运行。它们也可以隐藏。在普通浏览器中,网页通常在沙盒环境中运行,并且不允许访问本地资源。但是,电子用户有权在网页中使用Node.js API,从而实现较低级别的操作系统交互。参见:process,main processSquirrelSquirrel是一个开源框架,使得Electron应用程序可以在新版本发布时自动更新。有关Squirrel.userland入门的信息,请参阅autoUpdater API。该术语起源于Unix社区,其中“userland”或“userspace”指的是在操作系统内核之外运行的程​​序。最近,这个术语在Node和npm社区得到了推广,以区分“Node core”中可用的功能与更大的“用户”社区发布到npm注册中的软件包。Like Node,Electron专注于拥有一小组API,为开发多平台桌面应用程序提供所有必要的原语。这种设计理念使得Electron可以保持灵活的工具,而不会过分强调应该如何使用它。Userland使用户能够创建和共享工具,以提供“核心”中提供的其他功能。V8V8是Google的开源JavaScript引擎。它用C ++编写,并用于Google Chrome。V8可以独立运行,也可以嵌入到任何C ++应用程序中.Electron将V8作为Chromium的一部分构建,然后在构建V8时将Node指向该V8 .V8的版本号始终与Google Chrome的版本号相对应。Chrome 59包括V8 5.9,Chrome 58包括V8 5.8等。
  • developers.google.com/v8
  • org/api/v8.html
  • Docs/Development/V8-Development.md

WebView

webview标签用于在您的Electron应用程序中嵌入“客人”内容(如外部网页)。它们与iframes 相似,但不同之处在于每个webview都在单独的进程中运行。它没有与您的网页相同的权限,您的应用程序和嵌入式内容之间的所有交互都将是异步的。这使您的应用程序免受嵌入式内容的影响。

Electron

Electron 是一个使用 JavaScript, HTML 和 CSS 等 Web 技术创建原生程序的框架,它负责比较难搞的部分,你只需把精力放在你的应用的核心上即可。

主页 https://electron.atom.io/
源码 https://github.com/electron/electron
发布版本 1.7.9

Electron目录

1.指南 | Guides
2.指南·开发 | Guides: Development
3.Webview 组件 |
4.加速器 | Accelerator
5.API
6.API·对象 | API·Objects
7.app
8.autoUpdater
9.浏览器总览 | BrowserView
10.浏览器窗口 | BrowserWindow
11.浏览器窗口代理 | BrowserWindowProxy)
12.ClientRequest
13.剪贴板 | clipboard
14.内容追踪 | contentTracing
15.小型文字档案 | Cookies
16.crashReporter
17.调试器 | Debugger
18.desktopCapturer
19.dialog
20.电子下载 | DownloadItem
21.环境变量 | Environment Variables
22.无框窗口 | Frameless Window
23.globalShortcut
24.IncomingMessage
25.ipcMain
26.IPC渲染器 | ipcRenderer
27.语言环境 | Locales
28.画面 | Menu
29.MenuItem
30.本地图像 | nativeImage
31.net
32.通知 | Notification
33.权限监控 | powerMonitor
34.权限存储拦截器 | powerSaveBlocker
35.处理 | process
36.协议 | protocol
37.远程 | remote
38.sandbox
39.屏幕 | screen
40.会话 | session
41.shell
42.系统表现 | systemPreferences
43.触摸板 | TouchBar
44.触摸板按钮 | TouchBarButton
45.触摸板颜色选择器 | TouchBarColorPicker
46.触摸板组 | TouchBarGroup
47.触摸板标签 | TouchBarLabel
48.触摸板弹出框 | TouchBarPopover
49.触摸板清理 | TouchBarScrubber
50.触摸板分段控制 | TouchBarSegmentedControl
51.触摸板滑块 | TouchBarSlider
52.触摸板间隔 | TouchBarSpacer
53.Tray
54.网页内容 | webContents
55.网页框架 | webFrame
56.网页要求 | WebRequest
57.窗口开启 | window.open