- Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库。
- Electron通过将Chromium和Node.js合并到同一个运行时环境中,并将其打包为Mac,Windows和Linux系统下的应用来实现这一目的。
- Electron热门产品 GitHub 的 Atom 和微软的 Visual Studio Code,这两款当下热门的编辑器都是使用Electron开发的。 而且对JavaScript的支持也都很棒。
- Electron只用了Chromium的渲染库而不是其全部组件。 这使得升级Chromium更加容易,但也意味着Electron缺少了Google Chrome里的一些浏览器相关的特性
- Electron同时在主进程和渲染进程中对Node.js 暴露了所有的接口
- Electron支持chrome开发者工具调试 win.webContents.openDevTools()
使用vscode调试
1.在 VSCode 中打开一个 Electron 项目。
$ git clone [email protected]:electron/electron-quick-start.git
$ code electron-quick-start
Copy
2.添加一个 .vscode/launch.json 文件并使用以下配置:
{
"version": "0.2.0",
"configurations": [
{
"name": "Debug Main Process",
"type": "node",
"request": "launch",
"cwd": "${workspaceRoot}",
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron",
"windows": {
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/electron.cmd"
},
"args" : ["."]
}
]
}
注册全局快捷键
const {app, globalShortcut} = require('electron')
app.on('ready', () => {
// 注册一个 'CommandOrControl+X' 的全局快捷键
const ret = globalShortcut.register('CommandOrControl+X', () => {
console.log('CommandOrControl+X is pressed')
})
if (!ret) {
console.log('registration failed')
}
// 检查快捷键是否注册成功
console.log(globalShortcut.isRegistered('CommandOrControl+X'))
})
app.on('will-quit', () => {
// 注销快捷键
globalShortcut.unregister('CommandOrControl+X')
// 清空所有快捷键
globalShortcut.unregisterAll()
})
相关方法
globalShortcut.register(accelerator, callback)
有用的应用 https://electronjs.org/apps/mockman 模拟服务器
https://electronjs.org/apps/advanced-rest-client 模拟请求
https://electronjs.org/apps/reversee
https://electronjs.org/apps/ling
https://electronjs.org/apps/hyper
https://electronjs.org/apps/system-designer
https://electronjs.org/apps/altair xxxxx