【问题标题】:about asynchronous execution flow in Node.js关于 Node.js 中的异步执行流程
【发布时间】:2014-07-11 22:38:59
【问题描述】:

好,我来问什么是完成显示 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;
     }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 mysql node.js express


    【解决方案1】:

    第二种方法是对的。

    第一种方法可能有效,但可能不会,而且您无法保证它。如果您想确保 JavaScript 中的同步执行,最好使用回调函数,就像您在第二个示例中所做的那样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-19
      • 1970-01-01
      • 1970-01-01
      • 2023-03-04
      • 2017-08-30
      • 1970-01-01
      相关资源
      最近更新 更多