【问题标题】:Function declaration and calls in nodejs filesnodejs文件中的函数声明和调用
【发布时间】:2014-05-22 23:35:20
【问题描述】:

我正在阅读一些源文件,发现函数以两种不同的模式编写和调用。我将先描述这两种模式,然后再描述它们在主文件中的调用方式。

第一个模式:

文件module1.js:

    function a(req,res,next){
     //do somethin
    }

    module.exports.a = a;

秒模式:

文件 module2.js

module.exports = function(){
  return function(req,res,next){
     /* do something here */
    }
}

文件 main.js

   var mod1 = require('module1');
    var mod2 = require('module2');
    server.use(mod1.a);
    server.use(mod2());

让我困惑的是为什么 mod1 和 mod2 的写法如此不同。写这些的正确方法是什么

【问题讨论】:

    标签: javascript node.js


    【解决方案1】:

    如果您需要将配置对象或其他信息(例如数据库实例)传递给它将用于请求的中间件,则第二种模式很有用。

    任何一种方式都可以接受,这取决于您的需求。

    【讨论】:

      猜你喜欢
      • 2012-10-14
      • 2018-11-09
      • 2013-07-30
      • 1970-01-01
      • 2017-10-20
      • 1970-01-01
      • 1970-01-01
      • 2012-12-20
      • 1970-01-01
      相关资源
      最近更新 更多