Electron ipcRenderer 模块
ipcRenderer
模块是一个 EventEmitter 类的实例. 它提供了有限的方法,你可以从渲染进程向主进程发送同步或异步消息. 也可以收到主进程的响应.
发送消息
ipcRenderer
模块有如下方法来发送消息:
ipcRenderer.send(channel[, arg1][, arg2][, ...])
channel
Stringarg
(可选)
通过 channel
向主进程发送异步消息,也可以发送任意参数.参数会被JSON序列化,之后就不会包含函数或原型链.
主进程通过使用 ipcMain
模块来监听 channel
,从而处理消息.
在render进程中
const {ipcRenderer: ipc} = require('electron');
ipc.send('min');
在主进程中
import { app, BrowserWindow, ipcMain } from 'electron'
ipcMain.on('min', e=> mainWindow.minimize());
ipcMain.on('max', e=> {
if (mainWindow.isMaximized()) {
mainWindow.unmaximize()
} else {
mainWindow.maximize()
}
});
ipcMain.on('close', e=> mainWindow.close());