当前位置: 首页 > news >正文

Electron进程通信的另一种方式

上一篇讲述了主进程和渲染进程之间的通信,其中是通过调用 ipcMain 和 ipcRenderer 来完成的。比如渲染进程给主进程发送一个消息,然后主进程再返回一个消息给渲染进程:

主进程的逻辑:

ipcMain.on('selectDate',(e,date)=>{console.log("渲染进程发送的日期",date)mainWindow.webContents.send("returnInfo", date)})

渲染进程的逻辑:

ipcRenderer.send('selectDate', date);
window?.electron?.ipcRenderer?.selectDate(JSON.stringify(value))

这里我们使用的是 ipcMain.on 和 ipcRenderer.send。除了这两种方式,Electron 还提供了ipcMain.handle 和 ipcRenderer.invoke 方法。不同的是 ipcMain.handle 和 ipcRenderer.invoke 方法是异步调用的风格,可以根据自己的规范选择合适的 API。实例部分代码如下:

主进程:

	ipcMain.handle('selectDate',(e,date)=>{console.log("渲染进程发送的日期",date)mainWindow.webContents.send("returnInfo", date)})

渲染进程:

        selectDate: (date:string) => {return ipcRenderer.invoke('selectDate', date)},

现在这些功能:

  1. 一个渲染进程发送的消息,主进程可以接收到,其他的渲染进程也可以接收到;
  2. 主进程发送消息,所有渲染进程都能接收到
http://www.lryc.cn/news/220986.html

相关文章:

  • 二次型的相关理解
  • Spring框架中用于注入构造函数参数的标签constructor-arg
  • spdlog简单介绍和使用
  • 分类模型的Top 1和Top 5
  • LinkdeList集合
  • KaiOS APN配置文件apn.json调试验证方法(无需项目全编)
  • 【qemu逃逸】HWS2017-FastCP
  • 调节扬声器和麦克风的音量
  • XShelll-修改快捷键-xftp-修改编辑器
  • 编译原理(1)----LL(1)文法(首符号集,后跟符号集,选择符号集)
  • 远程仓库地址改变后更换url
  • VR全景如何助力乡村振兴,乡村发展在哪些方面用到VR全景技术
  • 21.6 Python 构建ARP中间人数据包
  • DVWA靶场SQL注入
  • AD教程 (九)导线及NetLabel的添加
  • Rust函数进阶
  • springboot前后端时间类型传输
  • Deepin安装英特尔AX200 Wifi驱动
  • 第十九节——vue内置组件
  • 路由器基础(二): BGP原理与配置
  • 【漏洞复现】Django _2.0.8_任意URL跳转漏洞(CVE-2018-14574)
  • 【广州华锐互动】军用飞机VR实战训练系统
  • AI生图王者之战!深度体验实测,谁是真正的艺术家?
  • Spring Cloud - 手写 Gateway 源码,实现自定义局部 FilterFactory
  • 14、Python继承和多态:基础继承、方法重写、多态的基本概念
  • 聊聊logback的StatusManager
  • [PyTorch][chapter 61][强化学习-免模型学习1]
  • 网络运维Day04-补充
  • 前端埋点方式
  • iOS导航栏返回按钮