私はnode.jsを使用してwebappを実装しており、jadeテンプレートエンジンを使用して表現しています。express + jade:提供されたローカル変数がビュー内で未定義です(node.js + express + jade)
テンプレートは、ヘルパーやダイナミックヘルパーにはアクセスできますが、エクスプレスで提供され、layout.jadeで利用可能で定義されている "body"ローカル変数以外のローカル変数にはアクセスできません。
これは、コードの一部です:
app.set ('view engine', 'jade');
app.get ("/test", function (req, res) {
res.render ('test', {
locals: { name: "jake" }
});
});
と、これはtest.jadeです:私は(名前を参照)は、第2の行を削除すると
p hello
=name
、テンプレートが示す、正しくレンダリングウェブページの "hello"という単語。
500 ReferenceError: Jade:2 NaN. 'p hello' NaN. '=name' name is not defined
NaN. 'p hello'
NaN. '=name'
私はヒスイを以下のローカル変数に対する正確例を表現してると信じて:私は=の名前が含まれている場合、それはにReferenceErrorがスローされます。私は何か間違っているのですか、これは急行や玉のバグでしょうか?
がここに罰金作品ノード3.4、ジェイド0.6を得ていた、同じエラーを削除アイコン
をリンクするために、0.7を表現。 2)、いくつかの情報を提供できますか?例えば。あなたのバージョンとlayout.jade。 –
ありがとうございました。いくつかのインストールの混乱の間、〜/ .node_librariesの下の古くなったエクスプレスディレクトリに終わった。それを削除し、 "npm install express"を実行して、最新の修正された問題をインストールしてください。 – Jake
StackOverflowに関して、私は何をしますか?質問を削除しますか?他の人にはあまり有効ではありません。単なるバージョンのものですから。私はあなたのコメントを正解とすることはできません。 – Jake