Less 有没有一种方法可以取出表达式,以便在各种mixin(如函数)中重用?
我有两个mixin,它们使用相同的表达式来计算@c的值,但该值适用于不同的属性Less 有没有一种方法可以取出表达式,以便在各种mixin(如函数)中重用?,less,Less,我有两个mixin,它们使用相同的表达式来计算@c的值,但该值适用于不同的属性 .mixin1(@a, @b){ @c: /* some complex expression with @a and @b */; width: @c; } .mixin2(@a, @b){ @c: /* same expression like in mixin1 */; height: @c; } 如何取出表达式以便在各种混合中重用?您可以使混合模拟函数: .mixin1(@a, @
.mixin1(@a, @b){
@c: /* some complex expression with @a and @b */;
width: @c;
}
.mixin2(@a, @b){
@c: /* same expression like in mixin1 */;
height: @c;
}
如何取出表达式以便在各种混合中重用?您可以使混合模拟函数:
.mixin1(@a, @b) {
.my-complex-expression(@a, @b);
width: @result;
}
.mixin2(@a, @b) {
.my-complex-expression(@a, @b);
height: @result;
}
.my-complex-expression(@a, @b) {
@result: ((@a + @b) / 2);
}
(请注意,它可能是每个范围内唯一的@result
变量,因此在实际项目代码中,可以使用一些长的“唯一”名称作为“返回变量”。例如@-result
或其他…)