Я пытаюсь добавить bcrypt в модель мангуста, используя машинопись.Я использую эту ссылку в качестве примера.
Но мой проект использует машинопись, поэтому я не могу полностью использовать тот же код.Я не понимаю, откуда они берут пароль для сопоставления с паролем отправки пользователя.
Когда я сравниваю пароли, кажется, что один из паролей не определен.Ниже приведен мой код, любая помощь приветствуется.
PersonTestSchema.pre<PersonTestModel>('save', function (next) {
const user = this;
if (this.password && this.password.length > 4) {
bcrypt.genSalt(10, function (err, salt) {
bcrypt.hash(user.password, salt, (err, hash) => {
user.password = hash;
next();
});
});
} else {
next();
}
});
PersonTestSchema.methods.verifyPassword = function (candidatePassword: string) {
const user = this;
return bcrypt.compareSync(candidatePassword, user.password);
Когда я регистрирую пароль кандидата, он заполняется, но если я регистрирую пароль user.password, он пуст.Это кажется логичным в моем коде, но я не понимаю, откуда они берут его в своем примере кода.