【发布时间】:2019-11-22 17:46:30
【问题描述】:
我创建了 mixin 来更改主题颜色,它很好,但我需要改进它,这里是:
@mixin themes($rule, $key) {
$themes: (
default: (
color-primary: $c24-color-primary,
color-primary-light: $c24-color-primary-light,
color-primary-lighter2: lighten($c24-color-primary-light, 2%),
color-primary-lighter20: lighten($c24-color-primary-light, 20%)
),
blackFriday: (
color-primary: $c24-color-lvl10-black,
color-primary-light: $c24-color-darkest-grey,
color-primary-lighter2: lighten($c24-color-darkest-grey, 2%),
color-primary-lighter20: lighten($c24-color-darkest-grey, 20%)
)
);
@each $label, $maps in $themes {
@if $label == default {
#{$rule}: map-get($maps, $key);
} @else {
body.#{$label} & {
#{$rule}: map-get($maps, $key);
}
}
}
}
我需要做的是添加多个规则,而不仅仅是一个如何做到这一点?
【问题讨论】:
-
你能举个例子说明你想如何将规则传递给 mixin 吗?
-
这仅适用于一条规则 @include theme('background-color', 'color-primary');
标签: sass scss-mixins