【发布时间】:2017-03-07 23:49:35
【问题描述】:
我正在尝试创建一个 each 循环,该循环创建一个类名并以该名称作为参数调用一个 mixin。我的想法是我可以列一个清单:
$list: (item1, item2, item3, ect);
然后运行 each 循环以使用该名称创建一个类,并以该名称作为参数调用一个 mixin。
@each $name in $list {
.#{$name} {
@include mixin($name);
}
}
mixin 中的那个参数调用另一个同名变量来设置 mixin 中我需要的属性。这似乎是我应该能够做的事情,但似乎无法弄清楚如何将 mixin 参数作为变量而不仅仅是一串文本。我是否必须以特定方式使用插值才能在列表名称前添加 $?这样做似乎不起作用:
@include mixin($#{$name});
我需要它做的是使用 item1、item2、item3 等的值来创建类名,然后通过 mixin 将它们作为变量 $item1、$item2、$item3 发送 我不确定还有什么可以尝试的。
【问题讨论】:
-
为什么需要变量来吐出每个变量?,这就是带有属性/值的映射的用途,
-
我试图使用 grunt spritesmith,但如果我有它为我创建一个 scss 文件,它不会像你有它创建一个css 文件。所以我试图创建一个 each 循环,我可以让它打印出类名并调用那个将同名作为变量的精灵 mixin。