async function getResult(){
let connection;
try {
connection = await mysql.createConnection(dbConfig);
const result = await connection.query('select height from users where pin=1100');
console.log(result[0].height);
return result[0].height;
} finally {
if (connection && connection.end) connection.end();
}
}
Soluciona los siguientes problemas:
- Si puede usar async/await, no tiene sentido seguir usando
thenpara estas situaciones.. - No necesita JSON
stringifyyparsesi está registrando algo. - Si detecta un error al cerrar una conexión, realmente debería volver a lanzarlo para que la función que llama a
getResultno recibe basura/undefinedespalda. En lugar de volver a lanzarlo, solo agregué unfinallybloque que siempre cierra la conexión, haya tenido éxito o no. - Dado que está utilizando async/await, su motor de JavaScript debería ser compatible con
letyconst. Es mejor quevar=) - No estabas devolviendo nada.