我是Nodejs的新手,并使用async.eachSeries来迭代该数组,当该数组具有四个元素时,它在最终响应中仅显示一个元素,并向该数组添加一个称为“支付类型”的新变量,该变量也不分配。我想将数组中的所有元素显示为最终输出。下面是代码,这种方法正确吗?我还看到它首先显示console.log中的所有元素,但在邮递员中它仅显示一个数据。如何解决此问题,以在async.eachSeries完成后将所有数组发送给邮递员。
代码:
let members=[];
Utils.async.each(response,(rowTrainers, callback) => {
var result=JSON.parse(JSON.stringify(rowTrainers));
rowTrainers.dataValues.payment_type = "Cashfree";
return callback();
}) ,err=>{
if(err){
console.error("Error: ", err);
cb(err, []);
}else{
members=rowTrainers;
Utils.sendResponse(1, rowTrainers , "success", q)
}
}
实际输出:
{
"message": [
{
"firstName": “Abc”,
"lastName": "xyzzy”,
“age”:24
}
]
}
预期输出:
{
"message": [
{
"firstName": “Abc”,
"lastName": “xyzzy”,
“age”:24,
“payment_type”:”Online”
},
{
"firstName": “def”,
"lastName": “pmo”,
“age”:23,
“payment_type”:”Online”
},
{
"firstName": “per”,
"lastName": “abc”,
“age”:23,
“payment_type”:”Online”
}
]
}
let members=[];
Utils.async.each(response,(rowTrainers, callback) => {
var result=JSON.parse(JSON.stringify(rowTrainers));
rowTrainers.dataValues.payment_type = "Cashfree";
members.push(rowTrainers);
callback();
}) ,err=>{
if(err){
console.error("Error: ", err);
cb(err, []);
}else{
Utils.sendResponse(1, members , "success", q)
}
}