我很难理解以下查询有什么问题。我正在使用 mongoose 4.1.10 和 mongodb 3.0.6。
passport.use("local-signup", new passportLocal.Strategy({
// by default, local strategy uses username and password, we will override with email
usernameField : 'email',
passwordField : 'password'
//passReqToCallback : true // allows us to pass back the entire request to the callback
}, (username, password, done) => {
co(function *() {
try {
const user = yield User.findOne({ "local.email": username });
if (user) {
return done(null, false);
}
else {
const newUser = new User();
newUser.local.email = username;
yield newUser.save();
}
}
catch(ex) {
done(ex);
}
}).then((user) => {
done(null, user);
});
}));
更具体地说,User.findOne({ "local.email": username });
永远不会解决。
我什至尝试使用回调方法,但我再次没有得到任何结果。