1.主进程先发起通信
主进程主动发起通信代码:
const {ipcMain,BrowserWindow} = require('electron');
let browserWindow= new BrowserWindow({
frame:true,//有边框 false 无边框
width:1200,
height: 600,
});
//browserWindow是主窗口实例
browserWindow.webContents.send('mainMessage', 'Hi!');
ipcMain.on('rendererMessage',(event,data)=>{
console.log(data);//接收渲染进程的回调信息
});
渲染进程监听主进程信息:
const {ipcRenderer} = require('electron')
ipcRenderer.on("mainMessage",(event,data)=>{
console.log(data);//接收到主进程信息
ipcRenderer.send('rendererMessage', 'I get it');//再发送一个信息给主进程
});
2.渲染进程先发起通信
渲染进程主动发起通信代码:
const {ipcRenderer} = require('electron')
ipcRenderer.send('rendererMessage', 'Hi');//主动一个信息给主进程
ipcRenderer.on('mainMessage',(event,data)=>{
conlose.log(data);//接收主进程的回调信息
})
主进程监听渲染进程信息代码:
const {ipcMain} = require('electron');
ipcMain.on("rendererMessage",(event,data)=>{
conlose.log(data);//接收渲染进程的信息
event.sender.send('mainMessage','I get it');//主进程发送信息给渲染进程
});