Javascript 是否可以从nodejs获取派生进程的进度?

Javascript 是否可以从nodejs获取派生进程的进度?,javascript,node.js,npm,npm-install,child-process,Javascript,Node.js,Npm,Npm Install,Child Process,我正在从js脚本中生成npm安装-g create react app。我想知道是否可以使用spawn获取安装进度 const npmExecutable = /^win/.test(process.platform) ? "npm.cmd" : "npm"; const npm = spawn(npmExecutable, ["install", "-g", "create-react-app"

我正在从
js
脚本中生成
npm安装-g create react app
。我想知道是否可以使用
spawn
获取安装进度

const npmExecutable = /^win/.test(process.platform) ? "npm.cmd" : "npm";
const npm = spawn(npmExecutable, ["install", "-g", "create-react-app"]);
我读过关于使用:

npm.on("message", data => {
  console.log(`A message: ${data}`);
});
但它没有显示任何东西

关于了解
python
脚本的进度有一个问题,但没有任何答案


你们中有人尝试过类似的东西吗?或者知道关于这方面的任何线索吗?

您可能想使用
npm.stdout.on('data',…)
child\u process.on('message',…)
事件用于具有IPC通道的进程,通常是使用
child\u process.fork(…)
创建的子进程。噢,谢谢。现在我可以读取数据,但它显示的是npm命令的最终输出,而不是命令执行的进度,这才是我真正需要的。您需要处理程序的输出以确定其进度,没有进程的内置进度监视器。是的,但是。。。您所说的:处理程序的输出以确定其进度是什么意思?根据文档,您可以收听
stderr
以获取进度信息。它说,
stderr
必须是一个
TTY
,我不知道这意味着什么,也不知道如何解析数据,但这就是您想要查看的地方。您可能想使用
npm.stdout.on('data',…)
child\u process.on('message',…)
事件用于具有IPC通道的进程,通常是使用
child\u process.fork(…)
创建的子进程。噢,谢谢。现在我可以读取数据,但它显示的是npm命令的最终输出,而不是命令执行的进度,这才是我真正需要的。您需要处理程序的输出以确定其进度,没有进程的内置进度监视器。是的,但是。。。您所说的:处理程序的输出以确定其进度是什么意思?根据文档,您可以收听
stderr
以获取进度信息。它说
stderr
必须是
TTY
,我不知道这意味着什么,也不知道如何解析数据,但这就是您想要查看的地方。