在main.js中使用ipcMain监听事件,为什么有的地方可以用event.sender去发送信息,有的地方却只能用mainWindow来发送呢?
在main.js中使用ipcMain监听事件,为什么在有的地方可以用event.sender去发送信息,有的地方却只能用mainWindow来发送呢?
ipcMain.on("select-music-files", (event, params) => { dialog.showOpenDialog({ "properties": ["openFile", "multiSelections"], "filters": [{ "name": "Music", "extensions": ["mp3"] }] }) .then(res => { if (!res.canceled && res.filePaths.length > 0) { // 这里却可以用event.sender event.sender.send("selected-music-files", { "musicFiles": res.filePaths }); } }) .catch(err => { console.log(err); }); }); ipcMain.on("import-music-files", (event, params) => { if (Array.isArray(params.musicFiles) && params.musicFiles.length > 0) { const musicFiles = musicDataStore.addTracks(params.musicFiles); // 这里尝试过,event.sender无法发送 mainWindow.send("render-music-files", { musicFiles }); } }); ipcMain.on("delete-music-file", (event, params) => { const musicFiles = musicDataStore.deleteTrack(params.id); // 这里尝试过,event.sender无法发送 mainWindow.send("render-music-files", { musicFiles }); });