ЭтоМЕНЬШЕ переменные сама конкатенация
.a {
@a: 1;
@b: 2;
@concat: @a;
@concat: ~"@{concat}@{b}";
margin: @concat;
}
выдает ошибку.
Syntax error: too much recursion
Однако это
.a {
@a: 1;
@b: 2;
@concat: e(`(function (a, b) {
var concat = "" + a;
concat += b;
return concat;
})(@{a}, @{b})`);
margin: @concat;
}
будет работать.
Есть ли уловка, чтобы объединить строку с собой только с МЕНЬШЕ (без concat1
, concat2
и т. Д. Переменных)?
Обратите внимание, что приведенный выше код не является предметом для упрощения, поскольку он будет использовать условные обозначения. Код должен генерировать
.optional-conditional-class1, .optional-conditional-class2, .optional-conditional-class3 {
....
}
в моде в similar петли. Вот почему я хочу создать конкатенированную строку со списком классов.
Меньше - это декларативный язык, поэтому его переменные не могут использоваться для изменения самих себя. Какую задачу вы пытаетесь решить (выглядит как [XY Problem] (http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem))? –
'if (aCondition) {concat + = a}; if (bCondition) {concat + = b}; 'Это упрощенный псевдокод js. Это можно легко сделать с МЕНЬШЕЙ, кроме ... ну, рекурсии. – estus
Несомненно, я обновил вопрос. Надеюсь, что это что-то объясняет. – estus