Funktion, die Daten abruft.Kette verspricht beim Rendern der Vorlage
Holen Sie sich eine Verbindung und holen Sie einige Daten. Einen Code ausgelassen.
function executeSQL(sql, bindParams , options) {
return new Promise(function(resolve, reject) {
...
resolve(result);
});
}
-Controller, der diese Funktion verwendet
exports.index = function(req, res){
database.executeSQL('SELECT 1 FROM DUAL', [] , {})
.then(function(result) {
res.render('index' , { TITLE : 'Lorem Ipsum Blog' });
})
.catch(function(err) {
next(err);
});
};
Mein index
Controller in meiner index
Route verwendet wird.
Ich muss meine executeSQL-Funktion mindestens zweimal aufrufen. Erst nachdem beide fertig sind, möchte ich res.render
anrufen und meine Daten, die ich abgerufen habe, einsenden.
Wie kann ich sie verketten? Muss ich sie sogar verketten? Kann ich sie nur asynchron ausführen und sobald sie beide fertig sind, rufe ich res.render
.
Wie wäre es 'Promise.all (arr) .then'? – Rayon
@RayonDabre Wenn ich console.log on on result1 starte, gibt es undefined zurück. Meine Renderfunktion erhält nicht die Ergebnisse dieser beiden Versprechen. – Paran0a
Mein Schlechter ... Verweise: https://jsfiddle.net/rayon_1990/Lson6f62/1/ – Rayon