2013-09-05 15 views
106

app.configureを使用せずに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'))); 

おかげで。

+17

AFAIKはありません。 'app.configure'は古いexpress版では使われていましたが、今は使われていませんでした。 –

+0

ありがとう、この質問だけで私の問題を解決するのに役立ちました。それはどれくらいいいですか? :) –

+0

'' '' 'が' '引用符 ''にある必要があります。 –

答えて

116

これはオプションであり、従来の理由から、文書によれば残っています。 あなたの例では、2つのコードは全く違いがありません。 http://expressjs.com/api.html#app.configure

アップデート2015:app.configureはエクスプレス4.xでは削除されていることを指摘し@IlanFrumer

いくつかの古いチュートリアルを実行し、それがうまくいかなかった理由が疑われる場合は、app.configure(function(){ ... }を削除する必要があります。このように:

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

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

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

'app.configure'はバージョン4.0から完全に削除されていることに注意してください! https://github.com/visionmedia/express/issues/936 –

+2

以前に使用していなかったExpressのバージョンを使用するときはいつでも、新しいバージョンhttps:// githubに移行する際にドキュメントを確認することをお勧めします.com/visionmedia/express/wiki/3.xから4.xへの移行 –

関連する問題