Я надеюсь, что это простая вещь, которую мне не хватает, но я не могу вернуть данные, как хотелось бы. Моя функция входа в систему принимает имя пользователя и возвращает пароль и идентификатор для аутентификации вместе с координатами пользователей XY из базы данных.
Координаты XY зависят от идентификатора, возвращенного из запроса на вход, который все возвращается как Promise
в основную функцию для аутентификации. Однако я не вижу, чтобы вернуть все данные в один красиво связанный объект.
function login(user) {
var query = 'SELECT password,id FROM player WHERE name='+mysql.escape(user);
return db.select(query).then(function(rows) {
console.log(rows);
return Promise.all([
getX(rows[0].id),
getY(rows[0].id)
]);
});
}
Это журналы:
[ { password: 'nopasswordforu', //<-- not a real password
id: 9 } ]
[ [ { x: 32 } ], [ { y: 36 } ] ]
Пароль записывается из оператора консоли, а не из возврата. Единственное, что возвращается, это координаты xy
. Как я могу вернуть результаты запроса в том же промисе, что и функция?