Почему isMatch возвращет false, хотя candidatePassword возвращает корректный пароль, и хеш сохраняется в базе тоже корректно.
userSchema.methods.comparePassword = function (candidatePassword, cb) {
bcrypt.compare(candidatePassword, this.password, function (err, isMatch) {
if (err) {
console.log('err')
return cb (err)
}
console.log(candidatePassword)
console.log(isMatch)
cb (null, isMatch)
})
}
Есть подозрение, что он не может из базы взять пароль из за ассинхронности, такое может быть? Потому что я не могу вывести в консоль this.password