mao*_*ao3 5 javascript mongoose mongodb node.js
我正在尝试做这样的事情
function retrieveUser(uname) {
var user = User.find({uname: uname}, function(err, users) {
if(err)
console.log(err);
return null;
else
return users[0];
return user;
Run Code Online (Sandbox Code Playgroud)
但是这会返回文档而不是用户对象.参数users是一个与查询匹配的用户对象数组,那么如何将其中一个对象存储到我的函数可以返回的变量中?
hex*_*ide 18
该函数User.find()
是一个异步函数,因此您不能使用返回值来获取结果值.相反,使用回调:
function retrieveUser(uname, callback) {
User.find({uname: uname}, function(err, users) {
if (err) {
callback(err, null);
} else {
callback(null, users[0]);
}
});
};
Run Code Online (Sandbox Code Playgroud)
然后将使用此函数:
retrieveUser(uname, function(err, user) {
if (err) {
console.log(err);
}
// do something with user
});
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
12528 次 |
最近记录: |