![](/img/trans.png)
[英]How to wait for .map() to finish executing before continuing on to next lines of code
[英]I want to make the callback wait for the response before executing the next lines of code
我想讓回調在執行下一行代碼之前等待響應。 我確實嘗試使回調async
然后await
響應,但這不起作用。
async signup(parent, args, ctx, info) {
const email = args.email;
let res;
verifier.verify(email, function(err, response) {
if (err) console.log(err);
else {
res = response.success;
console.log('before', res); // true or false
}
});
console.log('after', res); // undefined
}
async function signup (parent, args) {
return new Promise(function(resolve, reject) {
verifier.verify(args.email, function(err, response) {
if (err) {
reject(err);
}
else {
resolve(response.success);
}
});
});
}
創建一個function,得到響應后執行
async signup(parent, args, ctx, info) {
const email = args.email;
let res;
verifier.verify(email, function(err, response) {
if (err) console.log(err);
else {
res = response.success;
console.log('before', res); // true or false
nextfun(res)
}
});
}
function nextfun(res) {
console.log(res)
}
async signup(parent, args, ctx, info) {
let res = await new Promise(function(resolve, reject) {
verifier.verify(args.email, function(err, response) {
if (err) {
reject(err);
} else {
resolve(response.success);
}
});
});
console.log('after', res); // response.success
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.