【发布时间】:2015-04-12 15:34:28
【问题描述】:
只有在所有查询都完成后,有人才能帮我呈现页面吗?
app.get("/", function(req, res) {
connection = mysql.createConnection(dbconfig);
connection.connect(function(err) { if(!err) {
//Get all posts
connection.query('SELECT * from wp_posts WHERE post_status = "publish" AND post_type = "html5-blank" ORDER BY post_date DESC', function(err, rows, fields) { if(!err) {
//Get tags
for (var i in rows) {
connection.query('SELECT slug FROM wp_terms INNER JOIN wp_term_taxonomy ON wp_term_taxonomy.term_id = wp_terms.term_id INNER JOIN wp_term_relationships ON wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id WHERE taxonomy = "post_tag" AND object_id =' + rows[i].ID, function(err, _rows, fields) { if(!err) {
var slugs = '';
for(var y in _rows) {
slugs += '#' + _rows[y].slug + ' ';
};
rows[i]['hashtags'] = slugs;
console.log(i) //Returns last index
if(i == rows.length) res.render('content', {_page: '', _posts: rows}); //Executes multiple times
}})
};
}})
}});
});
即使我检查 i 的值,我也无法获取变量中的新值。有人可以建议在 nodejs 和 node-sql 中进行此类调用的理想方法是什么?
【问题讨论】: