exports.index = function(req, res) {
var names = [];
connection.query('SELECT * from shares', function(err, rows) {
if (err)
console.log('error in execution...');
else {
names = []
for ( var i in rows) {
names.push(rows[i].title);
}
}
});
//var names = heroes.map(function(p) { return p.name; });
console.log('names : ' + names);
res.render('index', { heroes: names });
};
在上面的代码中,我想在函数末尾打印name的值。它的打印没什么。有人能告诉我如何解决?
答案 0 :(得分:1)
您需要将res.render和控制台日志放入查询中的函数回调中。在您调用console.log时,数据库没有返回值,因为它是异步的。
exports.index = function(req, res) {
var names = [];
connection.query('SELECT * from shares', function(err, rows) {
if (err)
console.log('error in execution...');
else {
names = []
for ( var i in rows) {
names.push(rows[i].title);
}
console.log('names : ' + names);
res.render('index', { heroes: names });
}
});
//var names = heroes.map(function(p) { return p.name; });
};