私はnodejsでexpressを使用しています。私のレイアウトの中に、私は(私がヒスイを使用しています)は、次のようなものを持っているexpressjsレンダリングでレイアウト・ローカルをDRYする
body
nav.login
-if(currentUser)
="logged in information"
-else
="logged out information"
!=body
問題は、私は、レンダリングするたびに、私は今
res.render('anything.jade',{
locals: {
currentUser: req.session.currentUser,
/*all of my other locals*/
}
});
を持つことが必要だということですそれはのように思えますレンダリングのすべての呼び出しを行ってそれを追加しなければならない苦痛と、レイアウトに他の地元の人々を加えなければならない場合、同じことをする必要があります。レンダリングした場所のどこでもローカルユーザに 'currentUser'を再入力する必要がないようにする方法はありますか?
を呼び出すことができます。 – Ryan
これはすばらしいヒントですが、私が最初に質問したときに、どのようにうまく統合されたヘルパーがExpressに入ったのかよくわかりません。私は "サイト"オブジェクトを各render()呼び出しに渡すことがありました。ありがとう! –