Вопрос

Hello I am using connect and have:

var app = connect()
 .use(connect.static(directory))
 .use(function(req,res) {
  switch (req.url)
  {
   case '/query':
    exportFunc.query("myquery", res.end);
    break;
  }
}

-- exportFunc.js --
exports.query= function(query, cb) {
 queryServer(query, cb);
}

var queryServer = function(query, cb) {
 cb("MyQueryResult");
}

But I get an error that cb cannot be determined what object it is. Do I need to cast this object into its correct type?

Это было полезно?

Решение

You're not calling the function with the right context (this in the function). You can fix it by replacing

 exportFunc.query("myquery", res.end);

with

 exportFunc.query("myquery", res.end.bind(res));

or

 exportFunc.query("myquery", function(){ res.end() });
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top