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();
}
}
Risolve i seguenti problemi:
- Se puoi usare async/await, è inutile continuare a usare
then
per queste situazioni.. - Non è necessario JSON
stringify
eparse
se stai registrando qualcosa. - Se si rileva un errore per chiudere una connessione, è necessario rieseguirlo in modo che la funzione che chiama
getResult
non ottiene spazzatura/undefined
Indietro. Invece di rilanciarlo, ho appena aggiunto unfinally
blocco che chiude sempre la connessione, che sia andata a buon fine o meno. - Dato che stai usando async/await, il tuo motore javascript dovrebbe supportare
let
econst
. È meglio divar
=) - Non stavi restituendo nulla.