Удаление свойств из миксина в Less
Есть задача по которой нужно сделать так что бы можно было удалять свойства из миксина.
Пример
@my_list: "color", "width"; // Here we define a list variable with 2 values: color and width
.my-mixin () {
width: 100px;
background: red;
color: green;
}
.my-class-with-excluded-props {
/* Here we remove color and width properties from the included mixin. */
.my-mixin() - @my_list;
}
.my-class-with-all-props {
.my-mixin();
}
Вывод должен быть таким
.my-class-with-excluded-props {
/* Here we remove color and width properties from the included mixin. */
background: red;
}
.my-class-with-all-props {
width: 100px;
background: red;
color: green;
}
У меня есть понимание как просто присвоить свойствам значение None, но я не могу понять как их вообще удалить. Буду благодарен за любой совет
Так же при удалении в миксине в котором присутствует вложенность только внешние свойства должны быть удалены
Пример
@my_list: "color";
.my-mixin-1 () {
width: 100px;
color: green;
.a {
color: white;
}
}
.my-class {
.my-mixin-1() - @my_list;
}
Ожидаемый вывод
.my-class {
width: 100px;
}
.my-class .a {
color: white;
}
Источник: Stack Overflow на русском