电子中的渲染器和主要过程通信 - 正确的方式

时间:2018-02-20 19:52:25

标签: electron communication

我是Web tech和Electron的新手!我正在尝试构建一个包含许多窗口和字段的桌面应用程序 - 包括查找/搜索和从数据库中检索数据。 我相信除了如何处理Windows之间的通信之外,我还有大部分工作要做。即我需要一个对话框,显示客户表,用户选择客户将数据返回到调用窗口。因此,我将搜索字符串传递给显示客户列表的查找对话框,并在用户选择客户的对话框中将主键返回到调用窗口(将显示客户信息)。 我在网上找到了几种方法。但是我无法想象我需要保留所有窗口的列表(大约90个),并在main.js(主进程)中为每个窗口包含一个监听器,以允许窗口之间的通信。肯定有更好的办法!!是否有一种简单的方法来设置通用例程来处理通信????

2 个答案:

答案 0 :(得分:1)

如果你打开了90个窗口,那你就错了。使用Electron,每个窗口都在自己的进程中运行,每个窗口也有自己的GPU进程。这意味着您的应用程序将运行近200个进程,这对任何不高端的计算机来说都会非常慢。

Electron是一个将Web应用程序引入桌面的平台。在网络应用中,如果要显示90个窗口,则可以在单个浏览器窗口中将它们显示为HTML图层。

答案 1 :(得分:0)

我发现了几种打开窗口并将html,css和javascript添加到每个窗口的方法。我还发现了一种在主进程中创建全局变量的方法,并让其他窗口从全局变量中检索信息。所以我想我已经避免了我必须保留窗口列表的担忧。我仍然在和Electron挣扎 - 几乎没有什么是直截了当的。或许我应该说 - 很少符合我对桌面编程语言的经验 Johnf