web-dev-qa-db-ja.com

クラス名jadeの変数

Jadeのクラスで変数名を設定できません。

.flag_#{ session.locale } #{ session.locale }

私が持っています:

<div class="flag_" >en</div>

そして私は持っていたいです

<div class="flag_en" >en</div>

ありがとう

37
user1860758

これを試してください(テストしていません):

div(class="flag_#{ session.locale }") session.locale
77
karaxuna

[email protected]は次のように機能します。

div(class="flag_" + session.locale) session.locale
16
Pablo Armentano

ここに別のアプローチがあります:

mixin formButton(text, type, extra_classes)
    - var default_classes = 'btn btn-primary'
    if extra_classes
        - var classes = default_classes + ' ' + extra_classes
    else
        - var classes = default_classes

    if type
        button(class=classes type=type) !{text}
    else
        button(class=classes type="submit") !{text}


例1:

使用法:

+formButton('Text')

結果:

<button type="text" class="btn btn-primary" type="submit">Text</button>


例2:

使用法:

+formButton('Text', 'button')

結果:

<button type="text" class="btn btn-primary" type="button">Text</button>


例3:

使用法:

+formButton('Text', 'button', 'extra-class')

結果:

<button type="text" class="btn btn-primary extra-class" type="button">Text</button>
3
davidnknight

条件ステートメント を使用してこれを行うこともできます

  if liked == true
    span.like.active
  else
    span.like
2
dotslashlu