我正在创建一个电子应用程序,我的所有部分都分成不同的类(单独的文件)。我希望能够使用与ipcRender.send和ipcMain.on类似的东西与另一个人进行一次课堂谈话,但我希望在Electron渲染器中的两段代码之间进行通信。我怎么做?
我可以像mainWindow.webContents.send那样做一些愚蠢的事情,使用ipcRenderer.on在主窗口中接收消息,然后立即使用ipcRenderer.send发回相同的消息然后通过ipcMain.on接收它但看起来似乎有点疯狂
有没有办法在Electron App中发送数据,而无需通过Main?
答案 0 :(得分:0)
我认为对你有用的是调用其他文件中定义的函数。
一个例子就像在文件1中那样:
exports.myFunction = function (arg1, arg2) {
console.log(arg1);
console.log(arg2);
};
在文件2中你会得到:
var file1 = require('./file1.js');
file1.myFunction('arg1', 'arg2');
因此,如果您要运行文件2,那么它将在文件1中调用console.log arg1
和arg2
的函数。
你也可以用这样的变量做同样的事情:
文件1:
exports.customVar = 'placeholder';
文件2:
var file1 = require('./file1.js');
console.log(file1.customVar);
如果你要运行文件2,它将是console.log placeholder
答案 1 :(得分:0)
我发现我可以在一个类中使用ipcRenderer.emit,而在另一个类中我可以使用ipcRenderer.on来听到消息