我正在阅读一些源文件,发现函数是以两种不同的模式编写和调用的。我将首先描述这两种模式,然后描述它们在主文件中的调用方式。
第一个模式:
文件 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 - Nodejs 文件中的函数声明和调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23811182/