电子远程升级问题
Electron Remote Upgrade Issue
我有一个 Electron 应用程序,是我两年前写的。我不是一家公司的员工,只是写了一个应用程序的人,少数人用它来让世界变得更美好。无论如何,我需要对应用程序进行一些更改,但我的计算机前一段时间崩溃了,所以我将旧代码从 Github 下载到我的新计算机上并开始工作。但我立即发现该应用程序无法在新的 17.0.0 版本的 electron 中运行,因为 Electron 中的 REMOTE 模块已被弃用,然后在以前的版本中被删除。我尝试按照此处的说明... https://www.npmjs.com/package/@electron/remote?activeTab=readme 将 REMOTE 替换为新的 @electron/remote 模块。我遇到了几个问题,最近的问题是:
JavaScript 错误:未捕获异常:TypeError BrowserWindow 不是 app.createWindows 处的构造函数(C:...\main.js:89:17)。
我在我的应用程序中使用远程功能(属性?)超过 50 次,包括 .dialogue、.getGlobal、.getCurrentWindow 和 .BrowserWindow.getAllWindows
我没有在这里包含我的代码,因为我并不是真的在寻找编码解决方案(除非那是 easy/best/only 我应该做的事情,你可以根据我的信息给我一个解决方案书面),但更一般的建议是我应该朝哪个方向解决这个问题。我是一名优秀的程序员,使用的语言不是 Electron、JavaScript 或 NodeJS!所以,在正确的指导下我可以通过,但请对我放轻松。 (例如,我在 API 参考部分的 @electron/remote 说明中迷路了。)感谢您提供的任何帮助。
麦克
Electron 在过去几年中发生了一些重大变化,尤其是 remote
的使用。我不想这么说,但看起来你需要做一些工作才能让它再次运行。
你会想看看 ipcMain
, ipcRender
and contextBridge
。
在您的 new BrowserWindow()
方法中包含 webPreferences: {preload: ""}
以及使用上述 Electron 方法将使您处于安全、快速、线程分离代码的良好起点。
有关详细信息,请参阅 Context Isolation and Inter-Process Communication。
PS:如果您需要一些快速的代码来启动/给您一个想法,请告诉我。
我有一个 Electron 应用程序,是我两年前写的。我不是一家公司的员工,只是写了一个应用程序的人,少数人用它来让世界变得更美好。无论如何,我需要对应用程序进行一些更改,但我的计算机前一段时间崩溃了,所以我将旧代码从 Github 下载到我的新计算机上并开始工作。但我立即发现该应用程序无法在新的 17.0.0 版本的 electron 中运行,因为 Electron 中的 REMOTE 模块已被弃用,然后在以前的版本中被删除。我尝试按照此处的说明... https://www.npmjs.com/package/@electron/remote?activeTab=readme 将 REMOTE 替换为新的 @electron/remote 模块。我遇到了几个问题,最近的问题是:
JavaScript 错误:未捕获异常:TypeError BrowserWindow 不是 app.createWindows 处的构造函数(C:...\main.js:89:17)。
我在我的应用程序中使用远程功能(属性?)超过 50 次,包括 .dialogue、.getGlobal、.getCurrentWindow 和 .BrowserWindow.getAllWindows
我没有在这里包含我的代码,因为我并不是真的在寻找编码解决方案(除非那是 easy/best/only 我应该做的事情,你可以根据我的信息给我一个解决方案书面),但更一般的建议是我应该朝哪个方向解决这个问题。我是一名优秀的程序员,使用的语言不是 Electron、JavaScript 或 NodeJS!所以,在正确的指导下我可以通过,但请对我放轻松。 (例如,我在 API 参考部分的 @electron/remote 说明中迷路了。)感谢您提供的任何帮助。
麦克
Electron 在过去几年中发生了一些重大变化,尤其是 remote
的使用。我不想这么说,但看起来你需要做一些工作才能让它再次运行。
你会想看看 ipcMain
, ipcRender
and contextBridge
。
在您的 new BrowserWindow()
方法中包含 webPreferences: {preload: ""}
以及使用上述 Electron 方法将使您处于安全、快速、线程分离代码的良好起点。
有关详细信息,请参阅 Context Isolation and Inter-Process Communication。
PS:如果您需要一些快速的代码来启动/给您一个想法,请告诉我。