上面是 Electron 中主过程和渲染过程都能够应用的模块:

模块形容
clipboard提供办法来供复制和粘贴操作
crashReporter开启发送利用解体报告
nativeImageelectron 中获取图片能够通过文件的门路或是应用 nativeImage 对象
screen检索屏幕的大小,显示,鼠标地位等的信息
shell提供了集成其余桌面客户端的关联性能

clipboard模块

clipboard 模块提供办法来供复制和粘贴操作 。

示例:

例如将一个字符串写到 clipboard 上:

const clipboard = require('electron').clipboard;clipboard.writeText('xkd');

clipboard 模块有以下办法:

办法形容
readText以纯文本模式从 clipboard 返回内容
readText以纯文本模式从 clipboard 返回内容
writeText以纯文本模式向 clipboard 增加内容
readHtml返回 clipboard 中的标记内容
readHtml返回 clipboard 中的标记内容
writeHtmlclipboard 增加 markup 内容
writeHtmlclipboard 增加 markup 内容
readImageclipboard 中返回 NativeImage 内容
writeImageclipboard 中写入 image
readRtf clipboard 中返回 RTF内容
writeRtfclipboard 中写入 RTF 格局的 text
clear清空 clipboard 内容
availableFormats返回 clipboard 反对的格局数组
has返回 clipboard 是否反对指定 data 的格局
read读取 clipboarddata
writeclipboard 写入 data

crashReporter模块

crashReporter 模块开启发送利用解体报告。

示例:

例如主动提交解体报告给服务器 :

const crashReporter = require('electron').crashReporter;crashReporter.start({  productName: 'my_electron',  companyName: 'shushuo',  submitURL: 'https://9xkd.com/url-to-submit',  autoSubmit: true});

crash-reporter 模块有如下办法:

办法形容
start在应用其它 crashReporter APIs 之前应用
getLastCrashReport返回最初一个解体报告的日期和 ID,如果没有过解体报告发送过去,或者还没有开始解体报告收集,将返回 null
getUploadedReports返回所有上载的解体报告,每个报告蕴含了上载日期和 ID

nativeImage模块

electron 中获取图片能够通过文件的门路或是应用 nativeImage 对象。

示例:

例如当创立一个 tray 或设置窗口的图标时候,能够应用一个字符串的图片门路:

var appIcon = new Tray('/Users/somebody/images/icon.png');var window = new BrowserWindow({icon: '/Users/somebody/images/window.png'});

或者从剪切板中读取图片:

var image = clipboard.readImage();var appIcon = new Tray(image);

以后反对 PNGJPEG 图片格式,最好应用 PNG 格局 ,因为它反对通明和无损压缩。在 Windows 中还能够应用 ICO 图标的格局。

nativeImage 类有如下办法:

办法形容
createEmpty创立一个空的 nativeImage 实例
createFromPath从指定 path 创立一个新的 nativeImage 实例
createFromBufferbuffer 创立一个新的 nativeImage 实例,默认 scaleFactor 是 1.0
createFromDataURL 从 dataURL创立一个新的 nativeImage 实例

screen模块

screen 模块是一个EventEmitter,用于检索屏幕的 size,显示,鼠标地位等的信息。在 app 模块的 ready 事件触发之前不可应用这个模块。

示例:

例如咱们创立一个充斥整个屏幕的窗口:

const electron = require('electron');const app = electron.app;const BrowserWindow = electron.BrowserWindow;var mainWindow;app.on('ready', function() {  var electronScreen = electron.screen;  var size = electronScreen.getPrimaryDisplay().workAreaSize;  mainWindow = new BrowserWindow({ width: size.width, height: size.height });});

screen 模块有如下事件:

事件形容
display-added当增加了 newDisplay 时收回事件
display-removed当移出了 oldDisplay 时收回事件
display-metrics-changed当一个 display 中的一个或更多的 metrics 扭转时收回事件

screen 模块的办法如下所示:

办法形容
getCursorScreenPoint返回以后鼠标的绝对路径
getPrimaryDisplay返回最次要的 display
getAllDisplays返回一个以后可用的 display 数组
getDisplayMatching返回与提供的边界范畴最密切相关的 display
getDisplayNearestPoint返回离指定点最近的 display

shell模块

shell 模块提供了集成其余桌面客户端的关联性能。

示例:

在用户默认浏览器中关上 URL

var shell = require('shell');shell.openExternal('https://www.9xkd.com/');

shell 模块的办法如下所示:

办法形容
showItemInFolde关上文件所在文件夹,个别状况下还会选中它
openIte以默认打开方式关上文件
openExterna以零碎默认设置关上内部协定
moveItemToTra删除指定门路文件,并返回此操作的状态值(boolean类型)
beep播放 beep 声音