在节点js中如何获取当前模块中其他模块方法的结果

时间:2013-05-10 09:39:08

标签: node.js

ModuleTwo.js

exports.getNotificatiosById = function (notificationId) {

db.get(notificationId, function (err, doc) {

   if(!err){
     return true;
    }
 });

 };

在modulelOne中,我需要获取moduleTwo方法的结果。如果moduleTwo方法没有数据库查询功能,则意味着我可以在moduleOne中获得如下方法的结果

   var res=require('./lib/moduleTwo').getNotificatiosById;

如果该db.get方法具有synchronize方法,则意味着我可以执行类似

的查询
  db.getSync(id);

有没有其他方法可以获得我的moduleTwo方法的结果。现在我正在尝试如下。这是正确的

moduleOne.js

     var moduleTwo=require('./lib/moduleTwo');

     moduleTwo.getNotificatiosById(id,function(err,res){
        if(!err){
          console.log('Result of the 2nd module is '+res);
        }
     });

1 个答案:

答案 0 :(得分:0)

您需要更改getNotificatiosById才能接听回电

exports.getNotificatiosById = function (notificationId,callback) {

db.get(notificationId, function (err, doc) {
   if(!err){
     callback(doc);
     return true;
    }
 });

 };

然后将其称为

 var moduleTwo=require('./lib/moduleTwo');

 moduleTwo.getNotificatiosById(id,function(res){
      console.log('Result of the 2nd module is '+res);
 });