Удаление свойств из миксина в Less

Рейтинг: 0Ответов: 0Опубликовано: 15.05.2023

Есть задача по которой нужно сделать так что бы можно было удалять свойства из миксина.

Пример

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

Ответы

Ответов пока нет.