Verwenden von app.configure in Express


121

Ich habe Code gefunden, in dem Express ohne Verwendung eingerichtet wurde, app.configureund ich habe mich gefragt, was der Unterschied zwischen der Verwendung app.configureohne Umgebungsspezifizierer und der Nichtverwendung ist.

Mit anderen Worten, was ist der Unterschied zwischen diesen:

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')));
}

und das:

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')));

Vielen Dank.


18
AFAIK nichts. app.configuremusste in älteren Expressversionen verwendet werden, aber nicht jetzt.
pedro_sland

Danke, diese Frage allein hat mir geholfen, mein Problem zu lösen. Wie schön ist das :)
Non Plus Ultra

innerhalb requireder expresssein sollte quotes' .
Pramesh Bajracharya

Antworten:


123

Es ist optional und bleibt aus alten Gründen, so das Dokument. In Ihrem Beispiel unterscheiden sich die beiden Codes überhaupt nicht. http://expressjs.com/api.html#app.configure

Update 2015:

@IlanFrumer weist darauf hin, dass app.configure in Express 4.x entfernt wurde. Wenn Sie veralteten Tutorials gefolgt sind und sich gefragt haben, warum es nicht funktioniert hat, sollten Sie es entfernen app.configure(function(){ ... }. So was:

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

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

app.get('/', function (req, res) {
    ...
});

59
Beachten Sie, dass dies app.configurevollständig aus Version 4.0 entfernt wurde! github.com/visionmedia/express/issues/936
Ilan Frumer

2
Jedes Mal, wenn Sie eine Express-Version verwenden, die Sie zuvor noch nicht verwendet haben, sollten Sie nach einem Dokument suchen, um auf die neue Version github.com/visionmedia/express/wiki/Migrating-from-3.x-to-4
Ryan Ore
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.