Javascript 使用node.js中导出函数的异步串行和并行

Javascript 使用node.js中导出函数的异步串行和并行,javascript,node.js,async.js,Javascript,Node.js,Async.js,我正在尝试使用异步模块运行代码。但是,当async.series运行时,它只执行第三个()函数,然后停止。我知道async.series的第一个参数接受需要回调的任务数组。但是,我不确定应该如何对从另一个文件导出的函数执行回调,就像在函数first()和second()中一样。有什么帮助吗 process.js: app.js 您应该使用回调函数。我认为你的process.js还可以,所以我没有更改它。但是我在app.js中做了一些小改动。刚刚添加了以下回调函数: var-process=req

我正在尝试使用异步模块运行代码。但是,当async.series运行时,它只执行第三个()函数,然后停止。我知道async.series的第一个参数接受需要回调的任务数组。但是,我不确定应该如何对从另一个文件导出的函数执行回调,就像在函数first()和second()中一样。有什么帮助吗

process.js: app.js
您应该使用回调函数。我认为你的process.js还可以,所以我没有更改它。但是我在app.js中做了一些小改动。刚刚添加了以下回调函数:

var-process=require('./process.js');
var async=require(“异步”);
函数优先(回调){
console.log('FIRST');
process.process();
回调();
}
第二个函数(回调){
console.log('SECOND');
process.process();
回调();
}
函数三(回调){
console.log('third');
回调();
}
函数并行(){
parallel([first,second],函数(回调){
log(“第一个和第二个并行”);
});
}
async.series([third,parallel],function()){
log('third then parallel');
});
这应该行得通。下面是一篇关于异步库的非常好的博客:


嗯,您的
进程
执行进程
函数需要接受回调,一旦您的进程完成,它们就会调用回调。查看
process.exec(…)
的文档,了解这是如何完成的。
var process = require('child_process');

function executeProcess() {
  process.exec(...);
}

exports.Process = function() {
  executeProcess();
}
var process = require('./process.js');

function first() {
  process.Process();
}

function second() {
  process.Process();
}

function third() {
  console.log('third');
}

function parallel() {
  async.parallel([first, second], function() {
    console.log('first and second in parallel');
  });
}

async.series([third, parallel], function() {
  console.log('third then parallel');
});