Node.js 双括号在句子中是什么意思
我知道这个require语句的作用Node.js 双括号在句子中是什么意思,node.js,express,Node.js,Express,我知道这个require语句的作用 var express = require('express'); var app = express(); 但有时我会在require后面看到两个括号 var routes = require('./routes')(app); Q)这意味着什么,它是如何工作的?这意味着在这之后,有一个函数可以使用模块导出。导出: module.exports = function(app) { app.get("/", function(req, res){})
var express = require('express');
var app = express();
但有时我会在require后面看到两个括号
var routes = require('./routes')(app);
Q)这意味着什么,它是如何工作的?这意味着在这之后,有一个函数可以使用
模块导出。导出:
module.exports = function(app) {
app.get("/", function(req, res){});
}
另见
旁注:
您可以动态创建函数:
A.js
main.js
...
app.use(require("A")(data));
...
这是一种模式,在该模式中,您需要的模块的设置为函数。该模块返回一个函数,require后面的括号使用一个参数对函数求值
在上面的示例中,您的/routes/index.js
文件如下所示:
module.exports = function(app) {
app.get('/', function(req, res) {
});
// ...
};
此模式通常用于将变量传递给模块,如上文所述,app
变量。是Node.js提供的一个函数,它基本上为您加载一个模块,并返回您在加载的模块中公开的任何内容
如果(通过使用module.exports)在给定模块中公开的是函数,那么这就是需要返回的内容。比如说
//moduleX.js
module.exports = function(){
return "Helo World";
}
如果你需要它,你会得到一个函数
var f = require('./moduleX');
console.log(f()); //hello world
当然,您可以在需要时直接调用该函数
var greet = require('./moduleX')();
console.log(greet);
我可以帮忙啊。。。。这意味着:var express=require('express');var-app=express()代码>可以这样写:var-app=require('express')()代码>…即使这并不意味着它应该是=)
var greet = require('./moduleX')();
console.log(greet);