登录时的上下文不知道为什么不对?
//controler里面对比密码的地方
User.findOne({name: name}, function (err, user) {
if (err) {
console.log(err)
}
if (!user) {
console.log('redirect');
return res.redirect('/signup')
}
console.log(user);
user.comparePassword(password, function (err, isMatch) {
if (err)console.log(err);
console.log(password);
if (isMatch) {
req.session.user = user
console.log('Matched')
return res.redirect('/');
} else {
//return res.redirect('/signin');
}
})
})//Schema里面function
UserSchema.methods = {
comparePassword: function(_password, cb) {
bcrypt.compare(_password, this.password, function(err, isMatch) {
console.log(this);
if (err) return cb(err)
cb(null, isMatch)
})
}
}controler里面
console.log(user)

Schema console.log(this)

求大佬们指点一下