Bonjour à tous,
Je débute avec nodeJS, je bloque sur un truc qui doit être tout c.. mais je ne comprend pas 
Dans une route :
app.get('/bieres/', bieres.index);
Dans le controller correspondant j'ai :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| exports.index = function(req, res) {
res.render('inc_bieresListing.jade', {params: {categorie: getCategories() }});
}
var getCategories = function() {
console.log('ici1');
var temp='';
sql.query(mysql.format(req_boissoncategorie_sel1)).done(function (r) {
for (i = 0; i < r.length; i++) {
temp += i + " ";
console.log('ici2');
}
console.log('ici2');
return temp;
});
console.log('ici3');
} |
Dans les logs, j'ai :
1 2 3 4 5 6 7 8
| ici1
ici3
GET /bieres/ ...
ici2
ici2
ici2
ici2
GET /css/font.... |
Je comprend que la fonction getCategories est bien appelé, que les instructions sont appelées dans l'ordre et le résultat correspondant à la rapidité d'exécution de chaque instruction.
Dans jade :
l'affichage de me donne '[object Object]'
l'affichage de me donne 'undefined'
Cela veux dire que la page est affichée avant d'avoir le résultat d'appel de getCategories ?
Partager