electron和页面通信
# 页面(渲染进程)->electron(主进程)
页面
const { ipcRenderer } = require('electron')
ipcRenderer.send('loginSuccess', {username: 'admin'})
1
2
2
主进程
const {app, BrowserWindow, ipcMain} = require('electron')
app.whenReady().then(() => {
createWindow()
})
function createWindow(){
const win = new BrowserWindow({
width: 390,
height: 380,
webPreferences:{
nodeIntegration: true,
contextIsolation: false,
}
})
}
ipcMain.on('loginSuccess', (event, data) => {
console.log(data) // {username: 'admin'}
})
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 主进程 -> 渲染进程
主进程
ipcMain.on('loginSuccess', (event, data) => {
// 被动发送,通过监听获得发送者,指定发送
event.sender.send('eventName', {username: 'user'})
})
// 主动发送
win.webContents.send('eventName', {username: 'user'})
1
2
3
4
5
6
2
3
4
5
6
页面
ipcRenderer.on('eventName', (event, data) => {})
1
上次更新: 2023/09/22, 16:54:32