次のように、Express for Node.js Webアプリのmongodbセッションストアからセッション変数を渡します。
exports.dashboard = function(req, res){
res.render('dashboard', {pref: req.session.layoutpref});
}
次に、私のJadeファイルで、次のようにpref
の値をcssリンクに割り当てようとしていますが、構文エラーが発生しています。
head
title #{title}
link(rel='stylesheet', href='/stylesheets/' + #{pref} + '.css')
使用するcssファイルの場所へのpref
の連結に問題があることはほぼ確実です。これを修正する方法はありますか?
要素の内容に変数を挿入する場合は、#{}
表記を使用します。変数で使用する場合は、変数名をまっすぐに使用できます。
link(rel='stylesheet', href='/stylesheets/' + pref + '.css')
同等のもの:
link(rel='stylesheet', href='/stylesheets/' + locals.pref + '.css')
#{}
を使用する場合:
a(href='/stylesheets/' + locals.pref + '.css') View the stylesheet at #{pref}
JadeファイルはNode.js環境でコンパイルされます。
Node.js(v4.0.0以降)は テンプレートリテラル をサポートするため、
link(rel='stylesheet', href=`/stylesheets/${pref}.css`)
同等のもの:
link(rel='stylesheet', href='/stylesheets/' + pref + '.css')