electron进程通信

1.渲染进程对主进程通信

主进程

javascript 复制代码
ipcMain.on("saveFile" , ()=>{
    console.log(1)
})
//对外暴露api

预加载脚本

javascript 复制代码
//主进程和渲染进程的桥梁
const { ipcRenderer, contextBridge } = require('electron')

contextBridge.exposeInMainWorld("api" , {    //对外暴露api
    hd: () => {
        ipcRenderer.send("saveFile")
        //调用主进程api
    }
})

渲染进程

javascript 复制代码
window.addEventListener("DOMContentLoaded" , ()=>{
    window.api.hd()
})

2.主进程对渲染进程通信

主进程

javascript 复制代码
win.webContents.send("test" , 1)
//win为起作用的页面

预加载脚本

javascript 复制代码
contextBridge.exposeInMainWorld("api" , {
    counter:( callback )=>{
        ipcRenderer.on("test",(event, value)=>{
            callback(value)
        })
    }
})

渲染进程

javascript 复制代码
window.api.counter((value)=>{
    btn.innerHTML = value
})

3.invoke,handle双向通信

主进程使用handle暴露

预加载脚本使用invoke获取

这样连接的api主进程的return会直接渲染到前端控制台

相关推荐
小镇程序员2 分钟前
vue2 src_Todolist全局总线事件版本
前端·javascript·vue.js
野槐4 分钟前
前端图像处理(一)
前端
程序猿阿伟11 分钟前
《智能指针频繁创建销毁:程序性能的“隐形杀手”》
java·开发语言·前端
疯狂的沙粒13 分钟前
对 TypeScript 中函数如何更好的理解及使用?与 JavaScript 函数有哪些区别?
前端·javascript·typescript
瑞雨溪22 分钟前
AJAX的基本使用
前端·javascript·ajax
力透键背24 分钟前
display: none和visibility: hidden的区别
开发语言·前端·javascript
程楠楠&M35 分钟前
node.js第三方Express 框架
前端·javascript·node.js·express
weiabc35 分钟前
学习electron
javascript·学习·electron
盛夏绽放44 分钟前
Node.js 和 Socket.IO 实现实时通信
前端·后端·websocket·node.js
想自律的露西西★1 小时前
用el-scrollbar实现滚动条,拖动滚动条可以滚动,但是通过鼠标滑轮却无效
前端·javascript·css·vue.js·elementui·前端框架·html5