Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在独立脚本上运行的函数不能在另一个脚本Javascript node.js上运行_Javascript_Node.js - Fatal编程技术网

在独立脚本上运行的函数不能在另一个脚本Javascript node.js上运行

在独立脚本上运行的函数不能在另一个脚本Javascript node.js上运行,javascript,node.js,Javascript,Node.js,我正在尝试在node.js上使用Javascript运行.bat文件 这是我目前掌握的代码: function runBat(){ var exec = require('child_process').execSync; var result = exec('C:\\Temp\\tasks\\acis\\runme.bat'); console.log('result: ' + result); }; runBat(); 当我将此函数存储在一个单独的

我正在尝试在node.js上使用
Javascript
运行.bat文件

这是我目前掌握的代码:

function runBat(){
    var exec = require('child_process').execSync;
    var result = exec('C:\\Temp\\tasks\\acis\\runme.bat');
    console.log('result: ' + result);
    };

    runBat();
当我将此函数存储在一个单独的脚本中时,它可以正常运行

但当我使用原始脚本运行时(其中包含创建bat文件的代码),bat文件不会运行

如何使其与其他代码一起运行?

我尽量不使用任何回电,因为在这一过程中,它们往往会产生其他问题

对不起,我没提到你们。我尽量不使用异步函数

这应该行得通

var spawn = require('child_process').spawn,
    ls    = spawn('cmd.exe', ['/c', 'C:\\Temp\\tasks\\acis\\runme.bat']);

ls.stdout.on('data', function (data) {
console.log('stdout: ' + data);
});

ls.stderr.on('data', function (data) {
console.log('stderr: ' + data);
});

ls.on('exit', function (code) {
console.log('child process exited with code ' + code);
});

找到了解决办法。我所要做的就是在调用函数之前延迟一段时间

setTimeout(runBat, 3000);

感谢各位,感谢你们的帮助

你们提到了更多我可以看到/帮助你们的文件或代码,请确保这是一个完整的答案,以便我们可以帮助你们解决所遇到的错误。你们能向我们展示创建批处理文件的代码吗?@venkat7668-这不是一个错误。它只是打印出“result:”这个词。批处理文件应该生成一些xml文件,但在本例中@Mauricio不会发生这种情况,我的意思是更多的代码。创建批处理文件的代码