【发布时间】:2019-12-01 06:28:35
【问题描述】:
我有以下功能:
const findUserByEmail = (email) => {
var user
MongoClient.connect(url, (err, db) => {
const dbo = db.db('users')
dbo.collection('users').findOne({email: email}, (err, result) => {
if (err) throw err
else return result
})
db.close()
}).then((user) => {
return user
})
}
我正在尝试返回 user 的值,以便 findUserByEmail(email)=user 但无法弄清楚如何。我已经尝试使用 async/await 并承诺返回这个值来绕过 Node 的异步特性,但是在每个我都无法获得返回到主函数的值。在这种情况下,return user 将用户返回给 then() 函数,这是不正确的。
任何帮助将不胜感激。
【问题讨论】:
标签: node.js mongodb asynchronous