我正在尝试做这样的事情
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;
但这返回一个文档而不是用户对象。参数 users 是与查询匹配的用户对象数组,那么如何将其中一个对象存储到函数可以返回的变量中?
功能User.find()
是一个异步函数,因此不能使用返回值来获取结果值。相反,使用回调:
function retrieveUser(uname, callback) {
User.find({uname: uname}, function(err, users) {
if (err) {
callback(err, null);
} else {
callback(null, users[0]);
}
});
};
该函数将像这样使用:
retrieveUser(uname, function(err, user) {
if (err) {
console.log(err);
}
// do something with user
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)