问题
我有一个参数是回调函数。当我在我的async
瀑布函数中调用它时,它不会被调用。我的意思是这段代码:
代码
function myFunc(opts, callback){
var callback = callback || function () {};
...
async.waterfall(
[async.apply(findUser, opt), function2],
function (err, result) {
if (err) {
throw err;
};
if (result !== undefined && result.length !== 0) {
foundUser = result;
callback(null, "I called callback");
};
});
消息I called callback
不是来电。我的回调在我的测试代码中定义在另一个文件中。我正在使用socket io
。
我不知道问题出在哪里。任何评论表示赞赏
更新
我的callback
代码是:
function myCallback (err, result) {
console.log("hello", "this is my callback");
if (err) {
console.log("err", err);
}else{
console.log("result is:", result);
};
}
我怎么称呼它?
test.js
client.emit("event", message.encode().toBuffer(), myCallback);
(此文件中定义了myCallback
)
index.js
此文件处理event
socket io
事件:
mongoService.myFunc(userQueryParam, callback);
callback
是传递给此事件处理程序的myCallback
。
service.js
此文件具有上述myFunc
定义。