我无法在翡翠的类中设置变量名:
.flag_#{ session.locale } #{ session.locale }
我有:
<div class="flag_" >en</div>
我想拥有
<div class="flag_en" >en</div>
谢谢
试试这个(没有测试过):
div(class="flag_#{ session.locale }") session.locale
至于 pug@2.0.0-alpha3 以这种方式工作:
div(class="flag_" + session.locale) session.locale
这是另一种方法:
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>
您还可以使用条件语句来执行此操作,例如
if liked == true
span.like.active
else
span.like
您还可以使用模板文字:
- const session = { locale: 'en' }
div(class=`flag_${session.locale}`) #{session.locale}
//- Just to show more options:
div(class=`flag_${session.locale}`)= session.locale
div(class=`flag_${session.locale}`) Current language is #{session.locale}
div(class=`flag_${session.locale}`)= `Current language is ${session.locale}`
输出(使用 Pug 2.0.4):
<div class="flag_en">en</div>
<div class="flag_en">en</div>
<div class="flag_en">Current language is en</div>
<div class="flag_en">Current language is en</div>