node.js - 通过node.js在另一个目录中运行npm install

标签 node.js npm electron

我正在尝试从node.js应用程序的另一个目录中运行npm i。这样做的原因是因为该目录中产生了一个子进程。父应用程序位于用户的系统上,因此当推送新更新时,不能期望它们运行npm i。我可以将package.json复制到可以运行子进程的每个目录中,以便在此处手动运行install将安装所需的依赖项。

最佳答案

您是否正在尝试这样的事情?

var cwd = __dirname;

var Proc = require ("child_process").exec (
    "npm i", 
    {
        shell: "/bin/sh",
        stdio: [ 'pipe', 'pipe', 'pipe'],
        cwd
    }
);

Proc.stdout.on ("data", function (data) {
    process.stdout.write (data.toString ());
});

Proc.stderr.on ('data', function (data) {
    process.stderr.write (data.toString ());
});

Proc.on ('close', (code) => {
    console.log (`close: ${code}`);
});

关于node.js - 通过node.js在另一个目录中运行npm install,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64598676/

相关文章:

javascript - 如何修复 npm install React 列表过滤器

javascript - 无法使用 Electron 运行屏幕共享 chrome 应用程序

javascript - 希望将带有参数的回调函数传递给 Polymer 中的子组件

javascript - 如何在javascript中将一个对象的数据复制到另一个对象并执行两个对象值的减法?

node.js - 在 Docker 中使用 Yarn 从私有(private)注册表安装包

Electron :BrowserWindow.on关闭提示不起作用

node.js - 如何在 Electron 中发送(模拟)键绑定(bind)到 webContents?

javascript - 如何在js中编写自定义回调函数

node.js - 安装blueimp-file-upload-expressjs时出错

npm - 为什么 Yarn 不将所有可执行文件安装在 .bin 文件夹中?