Jako .query()
je asynchronní metoda, nebudete moci return
hodnota jako zpětné volání se bude nazývat po return
se hodnotí.
Budete muset pokračovat ve callback
vzor:
function query(sql, callback) {
client.connect();
client.query(sql, function (err, rows, fields) {
if (err) {
callback(err);
else
callback(null, rows, fields);
});
client.end();
}
Oprava:Zdá se, že client.end()
umožní dokončit aktuální dotazy dříve, než se připojení skutečně uzavře.
Volání .end()
uvnitř zpětného volání je samozřejmostí pro mnoho API, protože přeruší všechny čekající akce.