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 小时前
单细胞+空间转录组+ChIP-seq:这篇Nature研究在分析思路、方法学选择以及证据链构建方面均具有极高的学习价值
学习
不想看见4041 小时前
6.3Permutations -- 回溯法--力扣101算法题解笔记
笔记·算法·leetcode
前路不黑暗@1 小时前
Java项目:Java脚手架项目的通用组件的封装(五)
java·开发语言·spring boot·学习·spring cloud·bootstrap·maven
minglie13 小时前
数学分析中的反例
笔记
MrGaomq3 小时前
长安通信实习总结
笔记
A9better4 小时前
C++——指针与内存
c语言·开发语言·c++·学习
ICscholar4 小时前
具身智能‘Affordance‘理解
人工智能·学习·算法
今儿敲了吗5 小时前
18| 差分数组
c++·笔记·学习·算法
浅念-5 小时前
C++ 模板初阶:从泛型编程到函数模板与类模板
c语言·开发语言·数据结构·c++·笔记·学习
橙河网络5 小时前
橙河网络:国外问卷调查好做吗?有具体的步骤讲解吗?
经验分享·笔记·课程设计