我想向我的 Electron 应用程序添加一个插件系统,以便我的用户可以向我的应用程序添加新功能。我最初的想法是让我的用户上传一个包含插件的 .zip
,然后它会解压,并要求该插件在应用程序中使用它。然后我遇到了这个想法的问题。
- 由于我无法使用
npm
(例如lodash
),我应该如何处理具有依赖项的插件? - 如何为插件提供要使用的 API(例如获取应用程序主题或资源名称)
我不知道如何处理这个问题,我已经四处寻找类似的案例,但还没有找到。我的最终目标是拥有一个在 Electron 中工作的系统,类似于 Wordpress 插件的工作方式。
最佳答案
您可以使用 npm
作为子进程。
您可以实现自己的:
require('child_process').exec(
'npm ...',
{ maxBuffer: 1024 * 500 },
function (error, stdout, stderr) {
var response = JSON.parse(stdout).dependencies;
...
}
);
或使用库,例如:https://github.com/getstation/electron-package-manager
关于javascript - 我应该如何处理 Electron 中面向用户的插件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53396434/