electron学习笔记

electron:大前端背景下,用node.js做桌面端app的工具

1、安装:npm i electron

实际上是chromium + Node.js

2、创建一个窗口

3、主进程(操作硬件等,commonJS)与渲染进程(渲染页面,ES6)

主进程生命周期:activete、window-all-closed

监听方式:app.on('activate', ()=>{...})

4、在渲染进程中使用node.js模块(写文件等):在webPreference中引入预加载模块preload.js,node.js代码可以写在preload中。

preload.js:

通过contextBridge可以将获取到的变量挂载到window上,渲染进程app.js中就可以通过window.xxx(如:window.myApi.platfrom)获取到值了。

5、主进程和渲染进程通信:ipc

注意:preload是渲染进程中的,渲染进程中的electron只能获取到如下api:

所以在preload中无法从electron中解构出ipcMain

统一使用异步加载。

主进程文件main.js里写主进程通信代码:

preload.js里写渲染进程代码:

app.js里触发handleSend:

6、其他一些electron功能见文档:简介 | Electron (electronjs.org)

相关推荐
三品吉他手会点灯1 小时前
C语言学习笔记 - 20.C编程预备计算机专业知识 - 变量为什么必须的初始化【重点】
c语言·笔记·学习
kobesdu1 小时前
【ROS2实战笔记-12】rosshow:终端里的盲文可视化与无头机器人的现场调试
笔记·机器人·ros·移动机器人
sakiko_1 小时前
UIKit学习笔记1-创建项目(使用UIKit)、使用组件
笔记·学习
生信碱移2 小时前
PACells:这个方法可以鉴定疾病/预后相关的重要细胞亚群,作者提供的代码流程可以学习起来了,甚至兼容转录组与 ATAC 两种数据类型!
人工智能·学习·算法·机器学习·数据挖掘·数据分析·r语言
智者知已应修善业2 小时前
【51单片机中的打飞机设计】2023-8-25
c++·经验分享·笔记·算法·51单片机
星幻元宇VR4 小时前
VR航空航天科普设备【VR时空直升机】
科技·学习·安全·生活·vr
_李小白4 小时前
【android opencv学习笔记】Day 2: Mat类(图片数据结构体)
android·opencv·学习
智者知已应修善业4 小时前
【51单片机按键调节占空比3位数码管显示】2023-8-24
c++·经验分享·笔记·算法·51单片机
JasmineX-15 小时前
数据结构(笔记)——双向链表
c语言·数据结构·笔记·链表
harder3215 小时前
RMP模式的创新突破
开发语言·学习·ios·swift·策略模式