Javascript 关于Node.js中的异步执行流
很好,我想问一下,显示Mysql数据的最佳方式是什么 你认为这个流程是正确的吗Javascript 关于Node.js中的异步执行流,javascript,mysql,node.js,express,Javascript,Mysql,Node.js,Express,很好,我想问一下,显示Mysql数据的最佳方式是什么 你认为这个流程是正确的吗 app.get('/demo/:id', function(req, res) { var query = csql.query('SELECT * FROM table_videos WHERE id=? LIMIT 1',req.params.id, function(error, result){ if(error){ datos_video = error; }el
app.get('/demo/:id', function(req, res) {
var query = csql.query('SELECT * FROM table_videos WHERE id=? LIMIT 1',req.params.id,
function(error, result){
if(error){
datos_video = error;
}else{
if (result.length) {
datos_video = result[0];
}else{
datos_video = '0';
}
}
});
res.render('vid',{datos_video:datos_video});
});
在咨询之后或之前执行渲染
也许做点什么更好
app.get('/demo/:id', function(req, res) {
var query = csql.query('SELECT * FROM table_videos WHERE id=? LIMIT 1',req.params.id,
function(error, result){
if(error){
datos_video = error;
res.render('vid',{datos_video:datos_video});
}else{
if (result.length) {
datos_video = result[0];
res.render('vid',{datos_video:datos_video});
}else{
datos_video = '0';
res.render('vid',{datos_video:datos_video});
}
}
});
});
正确的方法是什么?非常感谢第二条路是对的 第一种方法可能有效,但可能不行,你不能夸夸其谈。如果您想确保JavaScript中的同步执行,最好使用回调函数,就像您在第二个示例中所做的那样