在主要過程中,我創建了一個名爲mainWindow
的窗口。點擊一個按鈕後,我創建了一個名爲notesWindow
的新的browserWindow
。Electron - IPC - 在窗口間發送數據
我想要做的就是從notesWindow
將數據發送到mainWindow
我所做的是使用IPC發送到第一從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");
mainWindow.js
const ipcRenderer = require("electron").ipcRenderer;
ipcRenderer.on('notes2', function(event, data) {
// this function never gets called
console.log(data);
});
任何人都可以解釋我做錯了嗎?提前致謝!
謝謝!我之前嘗試過使用webContents.send,但無法使其正常工作。 '未捕獲的異常: 類型錯誤:無法讀取的undefined' 我做了主窗口這樣 財產「webContents」'讓主窗口=新BrowserWindow({...})' 所以不知道爲什麼主窗口是未定義:S – Harmonic
有趣。將它放到'app.on('ready',createWindows)'允許這個工作。所以我將你的答案標記爲正確。謝謝你的幫助! – Harmonic
@harmonic,我有這個問題,但我無法修復它。我該如何解決它? –