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)

相关推荐
mCell2 天前
【锐评】桌面端技术营销:别拿跑分当工程判断
前端·rust·electron
TrisighT2 天前
Electron鸿蒙PC上写日志文件,我被权限和路径坑了两次
electron·harmonyos
RainCity2 天前
Java Swing 自定义组件库分享(十二)
java·笔记·后端
薛定喵的谔4 天前
Term Proxy — 用 Tauri 2 打造跨平台终端配置管理工具
electron·ai编程·全栈
逸铭4 天前
Day 5:三栏布局——左账号 / 中聊天 / 右工具
vue.js·electron
Mahut5 天前
我用 Electron + FFmpeg 做了一个本地视频处理工作站 ClipForge
前端·ffmpeg·electron
逸铭7 天前
Day 2:10 分钟搭 Electron + Vite + Vue 3——AnchorChat 的第一个窗口
electron·客户端
阿里云云原生8 天前
破局 Electron 监控盲区:基于 WASM 与 IPC 桥接的零侵入可观测 SDK 设计
electron
TrisighT9 天前
Electron 跑在鸿蒙 PC 上,单窗口和多窗口内存差 800MB?我抓了 5 组数据
性能优化·electron·harmonyos
LinXunFeng9 天前
Obsidian - 使用 Share Note 分享笔记并自部署
前端·笔记·github