在循环中更改变量名称

Change variable name in a loop

我需要在循环中将变量name更改为treesballoons等以获得

.trees{ color:1;}
.balloons { color:2;}

但我得到的是:

.trees{color:2}  
.name{color:1}

试过这个 mixin 但没有用,我做错了什么?

@name:name;
.name(@index) when (@index = 2) {@name: balloons;}
.name(@index) when (@index = 1) {@name: trees;}
.name(@index) when (@index > 0) {
.@{name}{ color:@index; }
  .name(@index - 1)
}
.name(2);

看看这个 codepen, you have to use list 所需的名称,您可以通过它的索引获取列表中的任何元素:

@item: extract(@names, @index);