如何在for循环中使用async/await?
这是我的代码:
export default (req, callback) => {
// ...
compliance.forEach((rule, index) => {
let response = await waRuleOverview(req, run.id, rule.id);
// handle the response
});
}
这是我定义 waRuleOverview
函数的方式:
export function waRuleOverview(req, runId, ruleId) {
var def = deferred();
setTimeout(function() {
const apiToken = req.currentUser.apiToken;
const payload = {
'Authorization': 'api_key ' + apiToken
}
const options = {
'method': 'get',
'gzip': true,
'headers': payload,
'content-type': 'application/json',
'json': true,
'url': 'api-url'
}
request(options, (error, response, body) => {
def.resolve(body);
});
}, 50);
return def.promise;
}
在控制台上会抛出以下错误:
await 是一个保留字
这个问题与这个问题相关,我正在努力解决它。
waRuleOverview
中没有使用await
,但是返回了一个 Promise。 - Yury Tarabanko