@mixin remCalc($property, $values...) {
$max: length($values);//返回$values列表的长度值
#{$property}: $max;
}
@include remCalc(background-position,0px 10px);
因为我传入的 $values参数 只能以空格分割,
有没有把values转成list的方法。
首先,诸如
$lstA : 0px 10px;
$lstB : (1,2),2; // 二维list
这样用空格分隔的写法就是list……
其次,你没有理解 多组值参数 与 list的 区别
当你的形参写作如下形式时:
$values...
并不是把若干个实参都赋给 $values,而是分别赋值,实参之间用逗号(",")隔开。
但是你实际上是使用空格分隔,这样,你的“若干个”参数会被编译器识别为一个参数(只是一个list),此时的length返回的实参数只能是1。我不知道你想要什么样的结果,也许这个是你需要的:
@mixin remCalc($property, $values) {
$max: length($values);//返回$values列表的长度值
#{$property}: $max;
}
@include remCalc(background-position,0px 10px);
另外,对list取长度也是用length函数的,这算一个坑吗。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。