在主进程中,我创建了一个名为
mainWindow
的窗口。点击按钮后,我创建了一个名为 notesWindow
的新 browserWindow
。我想做的是将数据从 notesWindow
发送到 mainWindow
。
我所做的是使用IPC send首先将数据从 notesWindow
发送到主进程,在主进程上检索数据,然后将该数据发送到 mainWindow
,但是 mainWindow
无法接收发送事件。向主进程发送数据运行良好,但从主进程到browserWindow似乎无法工作。
main.js
const ipcMain = require('electron').ipcMain;
ipcMain.on('notes', function(event, data) {
console.log(data) // this properly shows the data
event.sender.send('notes2', data);
});
noteWindow.js
const ipcRenderer = require('electron').ipcRenderer;
ipcRenderer.send('notes', "new note");
const ipcRenderer = require("electron").ipcRenderer;
ipcRenderer.on('notes2', function(event, data) {
// this function never gets called
console.log(data);
});
有人能解释一下我做错了什么吗?先感谢了!
未捕获的异常: TypeError: 无法读取未定义的属性'webContents'
我是这样创建主窗口的let mainWindow = new BrowserWindow({...})
所以不确定为什么mainWindow是未定义的:S - Harmonicapp.on('ready', createWindows)
中可以使其工作。因此,我将您的答案标记为正确。感谢您的帮助! - Harmonic无法读取未定义的属性“sender”
,但仅在Windows 10上出现... - Daniel Lizik