123

我发现了一些他们在不使用的情况下设置 Express 的代码,我想知道,使用不使用环境说明符和不使用它有什么app.configure区别?app.configure

换句话说,这之间有什么区别:

var app = require(express);

app.configure(function(){
    app.set('port', process.env.PORT || config.port);
    app.use(express.logger('dev'));  /* 'default', 'short', 'tiny', 'dev' */
    app.use(express.bodyParser());
    app.use(express.static(path.join(__dirname, 'site')));
}

还有这个:

var app = require(express);

app.set('port', process.env.PORT || config.port);
app.use(express.logger('dev'));  /* 'default', 'short', 'tiny', 'dev' */
app.use(express.bodyParser());
app.use(express.static(path.join(__dirname, 'site')));

谢谢。

4

1 回答 1

126

根据文档,它是可选的,并且由于遗留原因而保留。在您的示例中,这两条代码根本没有区别。 http://expressjs.com/api.html#app.configure

2015 年更新:

@IlanFrumer 指出 app.configure 在 Express 4.x 中被删除。如果您遵循了一些过时的教程并想知道为什么它不起作用,您应该删除app.configure(function(){ ... }. 像这样:

var express = require('express');
var app = express();

app.use(...);
app.use(...);

app.get('/', function (req, res) {
    ...
});
于 2013-09-05T13:12:05.990 回答