nodejs / pg,回调参数

时间:2016-10-07 08:16:12

标签: javascript node.js postgresql callback

我对node.js相当新,并且没有做过很多javascripts。试图搜索我的问题,但找不到与之相关的具体答案。

所以,当我正在努力将PostgreSQL附加到我的应用程序时,我在网络上的一些示例中跟踪了一个片段,看起来效果非常好。

无论如何我想了解它是如何工作的,我在理解以下代码的特定部分时遇到了问题:

module.exports = {
  query: function(text, values, cb) {
    pool.connect(function(err, client, done) {
      if(err) {
        return console.error('error fetching client from pool', err);
      }

      console.log(client);

      client.query(text, values, function(err, result) {
      done();
      cb(err, result);
      })
    });
  }
}

,具体部分是:

  

pool.connect(function(err,client,done){...}

我理解的是连接函数带有错误,客户端的回调函数,并作为参数完成,但我无法理解函数(错误,客户端,完成)从哪里传递给连接函数作为参数< / strong>即可。在哪里,我指的是一个调用connect函数的对象或调用者。

我怀疑它会在内部处理,但我想清楚地知道。

1 个答案:

答案 0 :(得分:0)

默认所有回调函数,第一个参数必须是错误,第二个参数是ur回调函数的结果。

完成类似于callback关键字,它说,你的任务结束并从函数调用的地方给出响应,就像正常函数中的return语句一样

示例:

 function callbackDemo(arg1, arg2, callback) {
  if (condition)
    callback(null, "Success");
    else
    callback("error");  
   }

callbackDemo(1, 2, function(err, result){

  if(!err)
    console(result);
   else
    console.log(err);
 });