Ich habe ein einfaches Knotenmodul, das eine Verbindung zu einer Datenbank herstellt und mehrere Funktionen zum Empfangen von Daten hat, zum Beispiel diese Funktion:
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);
}
});
});
}
};
Das Modul würde auf diese Weise von einem anderen Knotenmodul aufgerufen:
app.js:
import dbCon from './dbConnection.js';
dbCon.getUsers(console.log);
Ich möchte Versprechen anstelle von Rückrufen verwenden, um die Daten zurückzugeben. Bisher habe ich im folgenden Thread über verschachtelte Versprechen gelesen: Schreiben von sauberem Code mit verschachtelten Versprechen , aber ich konnte keine Lösung finden, die für diesen Anwendungsfall einfach genug ist. Was wäre der richtige Weg, um result
mit einem Versprechen zurückzukehren?