可选的LESS mixin变量是否可以引用另一个变量
是否可以引用参数混合中的另一个变量可选的LESS mixin变量是否可以引用另一个变量,less,mixins,Less,Mixins,是否可以引用参数混合中的另一个变量 .button(@textColor : @white, @iconColor : @textColor) { color: @textColor; i { color: @iconColor } } 我希望@iconColor默认为@textColor的值 更少的编译器在抱怨。我认为您需要做一个嵌套的mixin想法来获得您想要的功能。LESS无法判断您已经设置了@textColor,并将其用作第二个参数的默认设置。相
.button(@textColor : @white, @iconColor : @textColor) {
color: @textColor;
i {
color: @iconColor
}
}
我希望@iconColor
默认为@textColor
的值
更少的编译器在抱怨。我认为您需要做一个嵌套的mixin想法来获得您想要的功能。LESS无法判断您已经设置了
@textColor
,并将其用作第二个参数的默认设置。相反,您需要执行某种类型的保护表达式。在这里,我将该保护表达式设置为嵌套的mixin,它计算主mixin中的第二个参数,并相应地响应以获得@iconColor
集:
.button(@textColor: @white, @setIconColor: null) {
.setDefault() when (@setIconColor = null) {
.doSetting(@textColor);
}
.setDefault() when (iscolor(@setIconColor)) {
.doSetting(@setIconColor);
}
.setDefault();
.doSetting(@iconColor) {
color: @textColor;
i {
color: @iconColor
}
}
}
mixin中第二个参数的用途是什么?你没有在任何地方使用它吗?你不能删除它吗?编译应该可以。我错了,我更新了代码片段。@BenFoster:我更新了我的答案以反映你更清晰的代码更新。