如何在 Electron JS 中将变量从 mainWindow 发送到 childWindow?
How to send a variable from the mainWindow to a childWindow in Electron JS?
我正在打开 child window,它有自己的 HTML 和 JavaScript。
我想从 MainWindow javascript 发送一个 属性,一个 ID。到 childWindow.
child window 是一个“设置”window,完成后点击应用。然后我想让它 return 我一些 HTML
信息(搜索输入值)和我最初发送给它的 ID。
它们都是渲染器进程,主Window和childWindow。
我该如何实现?
两个 windows 无法直接通信,但您可以使用 ipcRenderer
通过您的 main.js
发送信息
第一个窗口:
const {ipcRenderer} = require('electron');
ipcRenderer.send('eventA', {SomeData});
main.js:
const {ipcMain} = require('electron');
ipcMain.on('eventA', (event, arg) => {
secondWindow.webContents.send('EventA', arg);
});
ipcMain.on('eventB', (event, arg) => {
firstWindow.webContents.send('EventB', arg);
});
child WIndow:
const {ipcRenderer} = require('electron');
ipcRenderer.on('EventA', (event, message) => {
ipcRenderer.send('EventB', {someotherData});
});
这条路 {someData}
到达你的 child window,并且可以原路返回。
我正在打开 child window,它有自己的 HTML 和 JavaScript。
我想从 MainWindow javascript 发送一个 属性,一个 ID。到 childWindow.
child window 是一个“设置”window,完成后点击应用。然后我想让它 return 我一些 HTML
信息(搜索输入值)和我最初发送给它的 ID。
它们都是渲染器进程,主Window和childWindow。
我该如何实现?
两个 windows 无法直接通信,但您可以使用 ipcRenderer
main.js
发送信息
第一个窗口:
const {ipcRenderer} = require('electron');
ipcRenderer.send('eventA', {SomeData});
main.js:
const {ipcMain} = require('electron');
ipcMain.on('eventA', (event, arg) => {
secondWindow.webContents.send('EventA', arg);
});
ipcMain.on('eventB', (event, arg) => {
firstWindow.webContents.send('EventB', arg);
});
child WIndow:
const {ipcRenderer} = require('electron');
ipcRenderer.on('EventA', (event, message) => {
ipcRenderer.send('EventB', {someotherData});
});
这条路 {someData}
到达你的 child window,并且可以原路返回。