【问题标题】:How should I handle user-facing plugins in Electron?我应该如何在 Electron 中处理面向用户的插件?
【发布时间】:2018-11-20 15:35:24
【问题描述】:

我想向我的 Electron 应用程序添加一个插件系统,以便我的用户可以向我的应用程序添加新功能。我最初的想法是让我的用户上传一个包含插件的.zip,然后它会提取,并要求插件在应用程序中使用它。然后我遇到了这个想法的问题。

  1. 由于无法使用npm(例如lodash),我应该如何处理具有依赖关系的插件?
  2. 如何为插件提供 API 以供使用(例如获取应用程序主题或资源名称)

我不确定如何处理这种情况,我已经四处寻找类似的案例,但没有找到。我的最终目标是拥有一个在 Electron 中工作的系统,类似于 Wordpress 插件的工作方式。

【问题讨论】:

标签: javascript node.js plugins electron


【解决方案1】:

您可以使用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

【讨论】:

  • 哇!非常感谢!
猜你喜欢
  • 2011-01-21
  • 2011-09-02
  • 1970-01-01
  • 2017-04-03
  • 1970-01-01
  • 2011-08-26
  • 2016-08-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多