ipcRenderer 而不是远程

ipcRenderer instead of remote

所以显然在 Electron 中使用 remote 模块是一种不好的做法,他们正计划将其终止。他们说应该使用 ipcRenderer 模块。

但是 ipc 是一个事件系统。

如果在预加载脚本中我需要从主进程获取某个变量怎么办?我无法监听给我该变量的 ipc 事件,因为它可能在脚本完成后出现! 使用远程模块,当您调用 remote.app.function() 获取您想要的内容时,脚本将被阻止,直到您获得结果,就像使用任何普通函数一样。

remote 只不过是 ipc 的包装器。如果您可以远程执行某些操作,那么也应该可以通过 ipcRenderer 进行操作。

您正在寻找的是 sendSync https://www.electronjs.org/docs/api/ipc-renderer#ipcrenderersendsyncchannel-args 允许等待 ipc returns 消息返回。但正如 remote 的弃用推理中所述,这通常是可能的脚枪,应谨慎使用。