我在Jade中有以下混音:
mixin indicator(slide_to, active)
- active = active || '' // this is an ugly method to create a default value
li(class=active, data-target='#' + CAROUSEL_ID, data-slide-to=slide_to)
我这样称呼它:
+indicator(1)
+indicator(2, 'active')
我希望参数active
的默认值为''
。我发现了一个丑陋的解决方法,如我的代码示例所示。在Jade有更好的方法吗?
此示例:
mixin test(slide_to, active)
li(class=active, data-slide-to=slide_to)
+test('a')
+test('a', 'b')
为我编译成这个HTML:
<li data-slide-to="a"></li>
<li data-slide-to="a" class="b"></li>
我用的是Jade 0.35.0。
杰德不会添加虚假的价值观。您可以在分章"布尔属性"中的Jade参考中阅读此内容。
答案需要更新,因为这在今天显然是可能的。
mixin test(slide_to= 'a', active='')
li(class=active, data-slide-to=slide_to)
+test()
+test('b')
+test('c', 'active')
为我编译成这个HTML:
<li class="" data-slide-to="a"></li>
<li class="" data-slide-to="b"></li>
<li class="active" data-slide-to="c"></li>