我是Node.js的新手,我想将数据数组传递给控制器。但是我无法在数组中插入循环数据,而且我还想从函数中获取结果数据。
Population.gen
答案 0 :(得分:0)
您需要阅读有关javascript中的异步和回调的信息。另一种方法是阅读有关异步和等待的内容。
答案 1 :(得分:0)
我会使用async
和await
router.get('route', (req, res) => {
// ...
users.find(query, (err, d) => {
try {
// ...
var results = []
for (var data of array) {
const result = await fetchUser(data)
results.push(result)
}
console.log(results)
} catch (err) {
console.log('some error occured', err)
}
})
})
async function fetchUser(id) {
return new Promise((resolve, reject) => {
users.find({ _id: id }, (err, data) => {
return err ? reject(err) : resolve(data)
})
})
}
如果您对async
和await
不太熟悉,我建议您this video