【发布时间】:2022-01-16 18:01:54
【问题描述】:
我正在学习在我的电子应用程序中没有remote 的生活。我已经到了需要从渲染器打开文件的地步,据我所知,这需要主进程来显示文件对话框并发回结果。
在我的main.js 中,我有以下内容:
ipcMain.on('open-file',(event,data)=>{
dialog.showOpenDialog(null, data, (filePaths) => {
event.sender.send('open-file-paths', filePaths);
});
});
在我称为pager.js 的渲染过程中,我有以下内容:
ipcRenderer.send('open-file',{
title: 'Title',
defaultPath: localStorage.getItem('defaultPath')
});
ipcRenderer.on('open-file-paths',(event,data)=>{
console.log(event);
console.log(data);
});
文件打开对话框运行良好,但我不知道如何获得结果。 ipcRenderer.on('open-file-paths',…) 没有被调用,所以这显然不是正确的方法。我想获得选定的路径或取消的消息。
如何在渲染过程中获得showOpenDialog 的结果?
【问题讨论】:
标签: electron ipc filedialog