Я пробую самую основную вещь - найти пользователя в базе данных и вернуть одно из полей для определенной найденной записи. Я хочу использовать обещания, частично для образовательной цели.Возвращаемое значение обещания в mongoose
var username = "user1" // assuming this exists: User({username: "user1", city: "London"})
function getUser(username) {
var promise = User.findOne({username: username}).exec();
var output = promise.then(function(user) {
return user.city;
}).catch(function(err) {
console.log(err);
});
return output;
}
С кодом, приведенным выше, при условии наличия пользователя с данными, выходная переменная по-прежнему является обещанием. Как я могу получить фактическое значение этого? У меня есть догадка, что моя проблема заключается в том, что оператор return не является async, т. Е. Я возвращаю вывод до его фактического разрешения. Каким будет правильный способ вернуть значение?