Mam prosty moduł węzła, który łączy się z bazą danych i ma kilka funkcji do odbierania danych, na przykład ta funkcja:
dbConnection.js:
import mysql from 'mysql';
const connection = mysql.createConnection({
host: 'localhost',
user: 'user',
password: 'password',
database: 'db'
});
export default {
getUsers(callback) {
connection.connect(() => {
connection.query('SELECT * FROM Users', (err, result) => {
if (!err){
callback(result);
}
});
});
}
};
Moduł zostałby nazwany w ten sposób z innego modułu węzła:
app.js:
import dbCon from './dbConnection.js';
dbCon.getUsers(console.log);
Chciałbym użyć obietnic zamiast wywołań zwrotnych, aby zwrócić dane. Do tej pory przeczytałem o zagnieżdżonych obietnicach w następującym wątku: Pisanie czystego kodu z zagnieżdżonymi obietnicami , ale nie mogłem znaleźć żadnego rozwiązania, które byłoby wystarczająco proste dla tego przypadku użycia. Jaki byłby właściwy sposób powrotu result
przy użyciu obietnicy?