javascript - 在安装 ElectronJS 应用程序期间安装节点模块

标签 javascript npm electron desktop-application node-modules

所以,我正在为开发人员构建一个 ElectronJS 应用程序。这将检查计算机上是否安装了 NodeJS。如果没有,它将下载并安装 NodeJS 最新版本,最后继续安装应用程序。

此外,在安装 Electron 应用程序期间,我想在全局范围内检查、下载并安装一些node_modules。

这是为了确保用户拥有可用于初始安装的所有工具,并且不需要单独安装它们。

如何实现这一目标?

请确保此过程是跨平台的(Windows、Linux 和 MAC)

最佳答案

有多种方法可以实现您想要的目标。

首先,您可以生成 child process来自仅运行 npm 命令安装所需软件包的 Node。

另一种方法是以编程方式使用 npm。一个例子如下:

var npm = require('npm');

npm.load({ 'global': true }, function (err) {
    if (err) console.log(err);

    npm.commands.install(['hello-world'], function (err, data) {
        if (err) return console.error(err)
    });
});

这并不是真正推荐的,因为没有真正支持编程 API。

最后但并非最不重要的一点是,有些软件包也可以以编程方式为您处理 npm,例如 npm-programmatic ,它也只是在后台生成一个子进程,但为用户/开发人员提供了更简单的界面。

关于javascript - 在安装 ElectronJS 应用程序期间安装节点模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48501209/

相关文章:

javascript - CSS动画在父元素上向上滑动子元素

node.js - 预发布未按预期工作

node.js - pnpm - node_modules 目录在磁盘中占用相同的空间吗?

typescript - 如何在 typescript 中为 `type`定义 `Electron`?

javascript - 如何在 TypeScript 中获取源代码中的实际行号(用于自定义日志记录)

javascript - Electron 无法加载具有完整功能的 Web 应用程序

javascript - Aurelia 使用值转换器对打印值进行节流

javascript - 如何在 python django 中解析包含字典的 javascript 列表

json - 在哪里添加 NPM 依赖项以运行安装后 Hook ?

javascript - 在调整大小时将图像的一部分与 css 重叠