2 つの「マスター テンプレート」が呼び出されios.jade
、さらに、変数の値に基づいて拡張する必要がある複数android.jade
の「子テンプレート」があります。残念ながら、これを行う方法はまだ見つかりませんでした。ios.jade
android.jade
次のようなことが頭に浮かびましたが、うまくいきません。
if (locals.os === "android")
extends android
else
extends ios
助言がありますか?
2 つの「マスター テンプレート」が呼び出されios.jade
、さらに、変数の値に基づいて拡張する必要がある複数android.jade
の「子テンプレート」があります。残念ながら、これを行う方法はまだ見つかりませんでした。ios.jade
android.jade
次のようなことが頭に浮かびましたが、うまくいきません。
if (locals.os === "android")
extends android
else
extends ios
助言がありますか?
「マスターテンプレート」に含める「子テンプレート」を動的に決定する方法を見つけました。私の「マスターテンプレート」が次のようになっていると仮定しましょう(として保存main.jade
):
html
head
meta(charset='utf8')
base(href='/')
title My super cool website
body
if(locals.os === "android")
include android
else
include ios
私の他のファイルは次のandroid.jade
とおりです。
p android
...そしてios.jade
:
p ios
次に、Node.js-Express サーバーで「マスター テンプレート」をレンダリングし、魔法が起こるのを確認します (以下のコードは完全ではないことに注意してください。最初にサーバーをセットアップする必要があります)。
app.get('/', function(req, res) {
res.render('main', {locals:{os: 'android'}});
});