Topic.getTopicsByQuery(query, options, proxy.done('topics', function (**topics**) {
return **topics**;
}));
本人现在用eventproxy, 中的 done方法, 不明白上面代码中的topics 是来源哪,还是用于返回给ep用的吗,还是从ep哪返回来的??
查询出来的 topics 结果集
done的效果就是在生成一个函数,那个函数 就接一个参数 然后把那个参数给返回来。(没传入回调的时候) 所以那个topics 就是 调用 getTopicsByQuery 的回调传入的
topics
是在查询到之后emit
topics
事件时传递的参数
//前5条内容: Db.find(Db.TABLES.MARKDOWN,where, {skip:0, limit:5,sort:{“attr.indate”:-1}},function(err,docs){ ep.done(‘deparse’,function(docs){return docs}); });
是不是可以写成: Db.find(Db.TABLES.MARKDOWN,where, {skip:0, limit:5,sort:{“attr.indate”:-1}},ep.done(‘deparse’,function(docs){return docs}); );
Topic.getTopicsByQuery(query, options, function(err, topics){ if (err) { proxy.emit(‘error’, err); } else { proxy.emit(‘topics’, topics); } });
估计这样写就可以看明白了,具体可以参考朴大神的eventproxy文档,神奇的done。 https://www.npmjs.com/package/eventproxy#done