node.js - वर्ग नाम जेड में परिवर्तनीय



express pug (3)

आप ऐसा करने के लिए सशर्त बयान का भी उपयोग कर सकते हैं

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

https://src-bin.com

मैं जेड में कक्षा में एक परिवर्तनीय नाम सेट नहीं कर सकता:

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

मेरे पास है:

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

और मैं चाहता हूँ

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

धन्यवाद


Answer #1

इसे आज़माएं (परीक्षण नहीं किया गया है):

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

Answer #2

यहां एक और दृष्टिकोण है:

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>




pug