Изменить имя переменной в цикле

Мне нужна переменная name изменить на trees, balloons и т.д. в цикле, чтобы получить

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

но я получаю вместо этого:

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

Пробовал этот миксин но не работает, что я делаю не так?

@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);

1 ответ

Решение

Посмотрите на этот код, вам нужно использовать список желаемых имен, и вы можете получить любой элемент списка по его индексу:

@item: extract(@names, @index);
Другие вопросы по тегам