玉混入默认参数
问题描述:
我有以下混入在玉:玉混入默认参数
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>
我用玉0.35.0。
Jade不添加falsy值。您可以在子章节布尔属性中的Jade reference中阅读此内容。
答
答案需要更新,因为今天显然是可行的。
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>
据我所知: –
不可以,但如果你希望类是空的,为什么不只是离开它喜欢它?如果在未定义活动时设置“class = active”,则根本不会有任何class属性。 –
不,如果没有设置活动,会有class = undefined – netimen