目录

开发概要

优质
小牛编辑
141浏览
2023-12-01

如何使用Node.js和Electron API.

所有的Node.js的内置模块都可以完美运用于Electron和第三方Node模块中(包括native modules)。
Electron还为开发本地桌面应用程序提供了一些额外的内置模块。有些仅在主进程中或渲染器进程(网页)中可用,有的则通用于两个进程。
基本规则:GUI模块或者系统底层的模块只能在主进程中使用。
要使用这些模块,你必须熟稔主进程vs渲染进程
像普通Node.js一样的主进程脚本:
1
const {app, BrowserWindow} = require('electron')
2
let win = null
3

4
app.on('ready', () => {
5
win = new BrowserWindow({width: 800, height: 600})
6
win.loadURL('https://github.com')
7
})
Copied!

渲染进程和传统的web界面一样,除了它具有使用node模块的能力:
1
<!DOCTYPE html>
2
<html>
3
<body>
4
<script>
5
const {app} = require('electron').remote
6
console.log(app.getVersion())
7
</script>
8
</body>
9
</html>
Copied!

如果想运行应用,请参考 运行应用程序.

解构任务

从0.37版本起,你可以使用[解构赋值][destructuring-assignment]更简便的使用内置模块。
1
const {app, BrowserWindow} = require('electron')
2
let win
3
app.on('ready', () => {
4
win = new BrowserWindow()
5
win.loadURL('https://github.com')
6
})
Copied!

只需把模块引入( require)并解构至 electron中即可使用:
1
const electron = require('electron')
2
const {app, BrowserWindow} = electron
3

4
let win
5

6
app.on('ready', () => {
7
win = new BrowserWindow()
8
win.loadURL('https://github.com')
9
})
Copied!

上面等同下面的代码:
1
const electron = require('electron')
2
const app = electron.app
3
const BrowserWindow = electron.BrowserWindow
4
let win
5

6
app.on('ready', () => {
7
win = new BrowserWindow()
8
win.loadURL('https://github.com')
9
})
Copied!

[destructuring-assignment]: https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment

最后更新:

类似资料

  • 介绍 iSlider是一个表现出众,无任何插件依赖的手机平台javascript滑动组件。它能够处理任何元素,例如图片或者DOM元素。 特性 优秀的性能,更少的内存占用; 提供丰富的动画切换效果,自带的效果包括 default, rotate, depth, flow, flip, card, fade 等,并且可以进行无限的扩展; 提供丰富的回调触发器,并且添加回调函数极为方便,无论在初始化还是

  • 输入和输出 下图是Graph::Easy的概要图,输入是绿色,直接输出是橘黄色,白色是组成节点。黄色的节点是使用第三方模块支持的格式输出。 有很多种方式创建Graph::Easy内部支持的数据结构: 使用交互式编辑器(没有实现) 使用Graph::Easy能理解的文本格式(graphviz, VCG, GDL, Graph::Easy)然后使用命令行工具graph-easy来解析并产生输出(这个工

  • Webpack也做类似热部署和代码优化,我们没有覆盖。有关更多信息,您可以查看。源代码也可以在Github上获得。

  • 百度搜索用户体验中心 《Web设计指南》是专门为广大Web内容生态提供一套简单实用的设计指南,目的是提升设计与开发的效率及质量,为广大用户提供优质的用户体验。 Web内容数以千亿涵盖生活各个方面,除了稳定流畅的浏览,优质的内容及服务,也需要高质量的交互及视觉体验。 基于百度新使命以及百度搜索开放的生态特征,我们提供适合第三方的设计指南与直观的案例参照。 设计指南会根据Web生态的发展不断更新优化,

  • 前言 需要了解的是 dva 是对 redux 的一层浅封装,所以虽然我们不要求一定要了解 redux 才能学会使用 dva,但是如果你对 redux 有所了解,再使用 dva 一定驾轻就熟,并且会了解很多潜在的知识点。redux的社区较为成熟,文档也比较健全,可以访问 http://redux.js.org(中文文档)查看更多内容,其中会介绍整个生态系统的相关框架与设计思路,值得一看。 开始 在

  • 智齿科技是业内首家以人工智能整合云呼叫中心、机器人客服、人工在线客服、工单系统的统一客服平台厂商,提供客户服务一站式解决方案。 不管你的客户来自于桌面网站,移动网站,微博,微信,App,智齿客服都会统一进行响应和管理 智齿客服融合了在线客服+机器人客服+呼叫中心+工单系统+AI大数据分析平台+开发平台六大产品模块,客户互通,数据互通,一款系统解决所有客服问题 在线及电话接待的客户,通过“获客-吸引