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();
}
}
Behebt die folgenden Probleme:
- Wenn Sie async/await verwenden können, ist es sinnlos, immer noch
then
zu verwenden für diese Situationen.. - Sie müssen JSON nicht
stringify
undparse
wenn Sie etwas protokollieren. - Wenn Sie einen Fehler beim Schließen einer Verbindung abfangen, sollten Sie ihn wirklich erneut auslösen, also die Funktion, die
getResult
aufruft bekommt keinen Müll/undefined
der Rücken. Anstatt es erneut zu werfen, habe ich einfach einfinally
hinzugefügt Block, der die Verbindung immer schließt, ob erfolgreich oder nicht. - Da Sie async/await verwenden, sollte Ihre Javascript-Engine
let
unterstützen undconst
. Es ist besser alsvar
=) - Sie haben nichts zurückgegeben.