2012-01-26 18 views
0

私の./inc/footer.jadeには、たくさんのスクリプトタグがあります。 1つの特定のルートでのみ、追加のスクリプトを提供したいと思います。これを行うには?私は何ができるのコントローラで玉:経路別のリソースを提供

res.render('someTemplate', { 
    extraScript: true 
}); 

とfooter.jadeで

- if (extraScript) 
    <script src="/script.js"></script> 

が、その後、私は(falseに設定)すべての単一の経路でこの 'extraScript' 変数を含める必要があります。

答えて

1

typeofを使用すると、変数が存在するかどうかを確認できます。このようにして

- if (typeof extraScript !== 'undefined') 
    <script src="/script.js"></script> 

、追加のスクリプトを必要としないすべてのルートのために、あなたは単にextraScriptに合格しないと、テンプレートで、typeof extraScript !== undefinedfalseに評価されます。

+0

これは私が探していた解決策です。ありがとう! – Pono

0

extraScriptソリューションが機能しますが、テンプレート継承(ブロックおよび拡張キーワード)を使用する方がよいと考えています。こうすることで、ロジックとローカル変数をテンプレートに追加する必要がなくなり、あなたはまだあなたの玉のマークアップに物事を残すことができます。

関連する問題