我想使用Sass内置的@each方法来缩短此代码:
.svg-circle-full {
@include mixinSVG((
'svg': $svgvar-icn-circle-full,
'isWide': false
)...);
}
.svg-circle-empty {
@include mixinSVG((
'svg': $svgvar-icn-circle-empty,
'isWide': false
)...);
}
.svg-circle-half {
@include mixinSVG((
'svg': $svgvar-icn-circle-half,
'isWide': false
)...);
}
基本上,我需要能够在mixinSVG mixin内部的@each循环中使用变量名。我正在尝试这样做,但是当它碰到'svg'属性内的@each变量时,它就会失败:
@each $state in full, empty, half {
.svg-circle-#{$state} {
@include mixinSVG((
'svg': $svgvar-icn-circle-#{$state},
'isWide': false
)...);
}
}
答案 0 :(得分:0)
您正在弄乱命名的参数。
它应该看起来像这样:
@each $state in triangle, square, circle {
.svg-circle-#{$state} {
@include mixinSVG(
$svg: svgvar-icn-circle-#{$state},
$isWide: false
);
}
}
来源:http://blog.ricardofilipe.com/post/object-arguments-in-sass