【问题标题】:Using node-cmd in React... Getting TypeError: exec is not a function在 React 中使用 node-cmd... 获取 TypeError: exec is not a function
【发布时间】:2019-11-10 20:15:55
【问题描述】:

我在我的反应应用程序中使用 npm node-cmd 并且在 cmd.get 上失败(向终端发送命令)。

我所有的代码都在原版 html 和 javascript 中工作,但我需要它在 React 中工作。我认为我的设置在反应中是错误的。

     import cmd from 'node-cmd';


     let projDir = result.substr(0, result.lastIndexOf('/')+1);
     let projFile = result.substr(result.lastIndexOf('/')+1);

     let copyFile = "cp '" + projFile + "' pproXML.gz";
     let unzip = "gunzip -d pproXML.gz";
     let rename = "mv pproXML pproXML.prproj";
     let targetXml = projDir + 'pproXML.prproj';  

     let cmdStr =
          "cd ..'" + projDir + "'\n" +
          copyFile + "\n" +
          unzip + "\n" +
          rename + "\n" +
          "ls";

     // FAILS HERE
     cmd.get(
          cmdStr,
          function(err, data, stderr){
               alert(data);
          }

我收到 TypeError: exec is not a function

【问题讨论】:

  • 你能发布完整的堆栈跟踪吗,这应该会给你失败的路径
  • 如何发布完整的堆栈跟踪?
  • 你在哪里得到TypeError 在什么控制台

标签: javascript node.js reactjs npm


【解决方案1】:

exec is not a function 告诉我node-cmd 出现问题。

只需打开库: var exec = require('child_process').exec;

该行将永远无法在浏览器中运行。只需尝试单个ls

【讨论】:

  • 我没有从浏览器运行它。我在 Adob​​e Premiere 中运行
  • 我尝试了一个 ls 并且我得到了同样的错误。 var exec 在支持文件 cmd.js
  • 所以这对于 Adob​​e 来说肯定是同样的问题......你不能要求像 child_process
  • 它适用于我在原版 html 和 javascript 中 - 我只是无法让它在反应中工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-05
  • 1970-01-01
  • 2017-11-19
  • 1970-01-01
  • 2021-10-26
  • 1970-01-01
相关资源
最近更新 更多