【发布时间】:2021-05-07 21:23:45
【问题描述】:
我在节点 js 中遇到了 async.parallel 的问题。以下代码运行完美
var data = {};
data.task_1= function(callback) {
var res_1 = "hello 1";
callback(null, res_1);
}
data.task_2 = function(callback) {
var res_2 = "hello 2";
callback(null, res_2);
}
async.parallel(data, function(err, results) {
if (err){
console.log(err);
}
console.log(results);
});
结果是:{ task_1: 'hello 1', task_2: 'hello 2' }
但是,如果我尝试使用从数据库调用数据的函数来执行任务,则会出现以下错误: TypeError: callback is not a function 和结果 { task_2: 'hello 2', task_1: undefined }
我在日志中看到,数据是在记录 json 文件之前检索到的。
这是我的代码:
var data = {};
data.task_1 = async function(callback) {
var res_1 = await getData("xyz");
console.log(res_1);
callback(null, res_1);
}
data.task_2 = function(callback) {
var res_2 = "hello 2";
callback(null, res_2);
}
async.parallel(data, function(err, results) {
if (err){
console.log(err);
}
console.log(results);
});
我错过了什么?感谢您的帮助!
【问题讨论】:
标签: javascript node.js async.js