Sass-值为@include的变量

Sass-值为@include的变量,sass,Sass,我创建了一个简单的mixin,它通过输入mixin的颜色生成渐变: @mixin bgGradient($color1, $color2) { background-image: linear-gradient(to bottom, $color1 0%, $color2 100%); } 我正在尝试将该mixin调用存储在一个变量中: $foo: @include bgGradient(#fff, #000); 但是,我在尝试执行此操作时出错: Invalid CSS after

我创建了一个简单的mixin,它通过输入mixin的颜色生成渐变:

@mixin bgGradient($color1, $color2) {
    background-image: linear-gradient(to bottom, $color1 0%, $color2 100%);
}
我正在尝试将该mixin调用存储在一个变量中:

$foo: @include bgGradient(#fff, #000);
但是,我在尝试执行此操作时出错:

Invalid CSS after "...foo:": expected expression (e.g. 1px, bold), was "@include bgGrad...")

是否可以将mixin调用存储在变量中?如果是的话,如何获得这种权力?我浏览了互联网,似乎找不到有人提到这个问题……

只要使用
@extend
指令就可以了

@mixin bgGradient($color1, $color2) {
  background-image: linear-gradient(to bottom, $color1 0%, $color2 100%);
}

%foo{
  @include bgGradient(#fff, #000);
}

//Example code
.my-div{
  @extend %foo;
}

您希望该变量包含什么?是否尝试将该变量用作其他css选择器的一部分?如果是这样,您应该使用
@extend
指令。更多信息。不,我不打算使用
@extend
,因为如果从我正在扩展的类调用mixin,我无法更改它的参数/参数。我希望
$foo
变量打印出
背景图像:线性渐变(到底部,#fff 0%,#000 100%)
,其中
#fff
#000
可以更改为不同的颜色。