这是我的代码,
exports.prepareMeshTerms = function(req,res) {
var input = req.body,
start = input.start,
limit = input.limit,
count = 0,
pipeData = '';
MeshTerms.find().skip(start).limit(limit).exec(function (err, data) {
if(err) {
throw err;
}
if (data) {
(async function(){
data.map(element => {
var string = element.Intervention.replace("|"," "),
payload = { json: { input: element.Intervention } };
await execute(payload,count,pipeData,element);
});
})();
}
});};
它说await不是保留的关键字。在这里我在自调用函数中保持异步,但仍然会引发错误。有人可以建议我帮忙。谢谢
答案 0 :(得分:3)
您无法在内部map
进行同步await
。而是使用Promise.all
创建map
的异步函数:
await Promise.all(data.map(async (element) => {
var string = element.Intervention.replace("|"," "),
payload = { json: { input: element.Intervention } };
await execute(payload,count,pipeData,element);
}));