我正在尝试使用Cheerio.js并使用async / await来同步请求。
这是我的(伪)代码:
for(var i=1; i<=3; i++){
rp(url)
.then(async (html) => {
const $ = await cheerio.load(html);
dataItem1 = await $('input[id=data1]').val();
console.log(dataItem1);
await console.log("yay!" + i);
})
.catch((err) => {
console.log(err);
})
}
当我使用node.js运行它时,输出为:
<required dataItem1>
Yay! 4
<required dataItem1>
Yay! 4
<required dataItem1>
Yay! 4
但是我想要的是
<required dataItem1>
Yay! 1
<required dataItem1>
Yay! 2
<required dataItem1>
Yay! 3
我要去哪里错了,应该对代码进行哪些更改以获得所需的输出?