首页 > 解决方案 > 子进程执行失败的电子应用程序调用 nodejs SpeedTest

问题描述

我试图在电子中执行 nodejs 命令。

const { execFile } = require('child_process');
const child = execFile('node', ['--version'], (error, stdout, stderr) => {
  if (error) {
    throw error;
  }
  console.log(stdout);
});

楼上那个不错!并很好地给出输出。但是一旦我执行:

npm install --global --save speed-test 

我的一个 Electron App下。

并尝试执行不同的命令,例如:

const { execFile } = require('child_process');
const child = execFile('speed-test', null, (error, stdout, stderr) => {
  if (error) {
    throw error;
  }
  console.log(stdout);
});

它给了我一个错误:

Uncaught Error: spawn speed-test ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:264)
    at onErrorNT (internal/child_process.js:456)
    at processTicksAndRejections (internal/process/task_queues.js:80)

更有趣的是,如果我在 Nodejs 的 CommandPrompt 下执行命令本身,那就完美了!所以……我很困惑。

预习

无论如何,我需要在 Electron App 下修改哪些内容?

标签: javascriptnode.jselectroncommandspeed-test

解决方案


推荐阅读