electron 通信总结

news/2024/10/19 7:35:48/

默认开启上下文隔离的情况下
在这里插入图片描述

渲染进程调用主进程方法:

主进程

  1. 在 main.js 中, 使用 ipcMain.handle,添加要处理的主进程方法
    const { ipcMain } = require("electron");
    在这里插入图片描述

  2. electron 中创建 preload.ts 文件,从 electron 中引入的 contextBridge 桥接方法
    暴露全局变量 eleapi 到渲染进程。并添加要调用的主进程方法。通过 ipcRenderer.on/invoke方法调用主进程方法。

const { contextBridge, ipcRenderer } = require("electron");contextBridge.exposeInMainWorld("eleapi", {mainNotifyCallback: (cb) => {ipcRenderer.on("mainNotify", cb);},tcpRevDataCallback: (cb) => {ipcRenderer.on("tcpRevData", cb);},tcpSndData: (data) => {ipcRenderer.invoke("tcpSendData", data);},ipccall: async (data) => await ipcRenderer.invoke('ipccall', data),getDebugConfig: async () => await ipcRenderer.invoke("getDebugConfig"),openWindow: (url) => {ipcRenderer.send("openWindow", url);}
});
  1. 在 main.js 创建窗口的方法中,预加载 preload.ts
    在这里插入图片描述

渲染进程:
3. 页面通过 window.eleapi.xxx访问暴露的方法。
在这里插入图片描述

主进程向渲染进程发送消息

在这里插入图片描述
preload文件中,通过 ipcRenderer.on(“mainNotify”, cb);监听到消息,向 web 派送 mainNotifyCallback
在这里插入图片描述


http://www.ppmy.cn/news/1455300.html

相关文章

【go项目01_学习记录06】

学习记录 1 使用中间件1.1 测试一下1.2 push代码 2 URI 中的斜杆2.1 StrictSlash2.2 兼容 POST 请求 1 使用中间件 代码中存在重复率很高的代码 w.Header().Set("Content-Type", "text/html; charsetutf-8")统一对响应做处理的,我们可以使用中…

09_电子设计教程基础篇(电阻)

文章目录 前言一、电阻原理二、电阻种类1.固定电阻1、材料工艺1、线绕电阻2、非线绕电阻1、实心电阻1、有机实心电阻2、无机实心电阻 2、薄膜电阻(常用)1、碳膜电阻2、合成碳膜电阻3、金属膜电阻4、金属氧化膜电阻5、玻璃釉膜电阻 3、厚膜电阻&#xff0…

【C++之map的应用】

C学习笔记---021 C之map的应用1、map的简单介绍1.1、基本概念1.2、map基本特性 2、map的基本操作2.1、插入元素2.2、访问元素2.3、删除元素2.4、遍历map2.5、检查元素是否存在2.6、获取map的大小2.7、清空map2.8、基本样例 3、map的基础模拟实现4、测试用例4.1、插入和遍历4.2、…

Leetcode编程练习

面试题-消失的数字 . - 力扣&#xff08;LeetCode&#xff09; class Solution { public:void reverse(vector<int>& nums, int start, int end) {while (start < end) {swap(nums[start], nums[end]);start 1;end - 1;}}void rotate(vector<int>& …

我独自升级:崛起怎么下载 我独自升级游戏下载教程分享

定于5月8日全球揭幕的《我独自升级崛起》——一款扣人心弦的动作RPG巨制&#xff0c;灵感采撷于同名动画及网络漫画的热潮&#xff0c;誓将引领满怀热忱的玩家步入一场交织着深邃探索和宏大规模的奇妙冒险。该游戏立足于一个独树一帜的网络武侠宇宙&#xff0c;细腻刻画了一个凡…

SV-1031 32路网络消防报警矩阵

SV-1031 32路网络消防报警矩阵 18123651365 一、描述 SV-1031是深圳锐科达电子有限公司的一款机架式网络消防报警矩阵&#xff0c;具有10/100M以太网接口&#xff0c;并提供32路消防报警通道输入端子&#xff0c;可以直接连接烟感输出或报警设备开关量输出。当SV-1031的消防报…

MMC设备

MMC&#xff08;MultiMediaCard&#xff09;是一种闪存卡标准&#xff0c;用于作为便携式设备上的存储媒介&#xff0c;例如数码相机、智能手机、平板电脑、个人数字助理&#xff08;PDA&#xff09;以及其他便携式设备。MMC卡最初是由SanDisk和Siemens AG开发的&#xff0c;并…

GateWay检查接口耗时

添加gateway依赖 <dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId> </dependency>创建一个LogTimeGateWayFilterFactory类&#xff0c;可以不是这个名字但是后面必须是x…