【发布时间】:2021-02-07 11:47:51
【问题描述】:
const wiki = require('wikijs').default;
const { writeFileSync } = require("fs")
const dates = require("./getDates")
//December_23
for (let i = 0; i < dates.length; i++){
wiki()
.page(dates[i])
.then(page => page.content()).then((value => {
writeFileSync(`./data/${dates[i]}.json`,value)
console.log(`${dates[i]} imported`)
}
)
).catch((err) => console.error(`${dates[i]} error\n${err}`))
}
我正在尝试通过 wikijs 使用 for 循环从 Wikipedia 获取数据。但是for循环没有等待承诺结束我该如何解决这个问题
【问题讨论】:
-
这能回答你的问题吗? Wait promise inside for loop
-
您能否更具体地说明为什么它不等待承诺这一事实对您来说是个问题?是不是因为当承诺结束时,
i最终变成了dates.length - 1?
标签: javascript node.js es6-promise