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();
}
}
Résout les problèmes suivants :
- Si vous pouvez utiliser async/wait, il est inutile de continuer à utiliser
then
pour ces situations.. - Vous n'avez pas besoin de JSON
stringify
etparse
si vous enregistrez quelque chose. - Si vous rencontrez une erreur pour fermer une connexion, vous devriez vraiment la relancer afin que la fonction qui appelle
getResult
n'obtient pas de déchets/undefined
retour. Au lieu de le relancer, j'ai juste ajouté unfinally
bloc qui ferme toujours la connexion, qu'elle ait réussi ou non. - Puisque vous utilisez async/wait, votre moteur javascript doit prendre en charge
let
etconst
. C'est mieux quevar
=) - Vous ne retourniez rien.