У меня есть эта функция в классе на nodejs. Он получает все строки в БД.
module.exports = class fooClass {
static async fooFunc() {
const mysql = require('mysql');
const util = require('util');
const conn = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
database: 'dbname'
});
// node native promisify
const query = util.promisify(conn.query).bind(conn);
try {
const rows = await query('SELECT * FROM `dbtable`');
return rows;
} finally {
conn.end();
}
}
}
Когда я вызываю эту функцию,
let result = fooClass.fooFunc();
console.log(result);
Я получаю это:
Promise { <pennding> }
Я могу использовать fooClass.fooFunc().then...
, но для этого потребуется добавить функцию обратного вызова на then
, что потребует большого количества изменений.
Есть ли способ получить строки, просто вызвав let result = fooClass.fooFunc();
?
Заранее спасибо.