Я занимаюсь разработкой API nodejs.В некоторых из моих API мне нужно проверить, являются ли некоторые параметры уникальными или нет в базе данных, и мне нужно кодировать его в отдельном методе, чтобы разделить функцию.(PS: я не хочу делать это в моделях продолжения)
Мой вызов API подобен этому
var duplicate = checkUniqueEmail(req.body.email);
console.log(duplicate);
if(duplicate == true){
//do something
} else {
//return error
};
Метод проверки подобен этому
function checkUniqueEmail(email){
db.users.find( {
where: {email: email}
}).then( (result) => {
if(result !== null){
return false;
} else {
return true;
}
}).catch(err => {
console.log(err);
});
}
Нонаконец, я получил undefined
от console.log (дубликат)
Проблема, кажется, что я регистрирую результат перед его выполнением и возвращаю некоторые результаты, это должна быть проблема асинхронности javascript.
Как я могу изменить свой код для достижения моей цели?