0

CoffeeScriptでExpressプロジェクトをビルドしようとしています。app変数をグローバルにして、どこでも使用できるようにしようとしています。変数から構成設定を読み取ります。

これまで、私はこれを試しました-

私のapp.coffeeファイルで-

app = express()
app.configure ->
    app.set 'host', 'localhost'
http.createServer(app).listen 8888, ->
    console.log 'Server started'
exports.app = app

hostルートファイルの1つで上記の変数セットにアクセスしたい。そこで、ルートハンドラーで試してみました。

exports.app.get('host') # I get this undefined

これを達成する方法は?require(app)ルートファイルに含める必要がありますか?app.coffee明らかにルーティングのために、ルートが存在するモジュールを必要としています。

app.get '/', 'route_handler'
4

1 に答える 1

6

ルートハンドラーは、要求オブジェクトと応答オブジェクトを受け取ります。どちらにもグローバルアプリ変数への参照があります。そこから、app.set'host'からreq.app.settings.hostを介して設定した値を取得できます。

app.get '/', (req, res) -> 
    console.log req.app.settings.host
    # your code goes here
于 2012-11-21T16:52:37.343 に答える