mixin中找不到变量错误

时间:2018-04-18 21:36:48

标签: sass

styles.scss样式表中,我导入以下元素:

@import './variables';
@import './forms/forms';
@import './mixins/breadcrumb';

_variables.scss的内容:

$errorInputText: #a00f0f;
$errorLabelText: #ad7777;
$lightLabelColor: #ffffff;

$pillsShadowColor: #d8d8d8;
$pillsNoBackgroundColor: #ffffff;

_forms.scss文件的内容。

此文件中使用的变量包含在_variables文件中。 _forms.scss中没有导入,变量完美无缺。 _forms.scss文件似乎能够从父_variables文件中导入的styles.scss文件中检索变量。

input {
  &.ui-inputtext.errored {
    color: $errorInputText;

    & ~ label {
      color: $errorLabelText;
    }
  }
}

_breadcrumb.scss内容:

@mixin badgeBreadcrumb($shadowColor: $pillsShadowColor, $backgroundColor: $pillsNoBackgroundColor) {
  background-color: $backgroundColor;
  border: 1px solid #eee;
  padding: 3px 8px 3px 8px;
  margin-top: 3px;

  &:hover {
    background-color: darken($backgroundColor, 2%);
  }
}

这里sass编译器给出了一个错误:

mixin badgeBreadcrumb($shadowColor: $pillsShadowColor, $backgroundColor: $pillsNoBackgroundColor) {
                                    ^
      Undefined variable: "$pillsShadowColor".

如果我将_variables文件明确导入_breadcrumb.scss,则错误就会消失。

我不知道为什么它与我的_forms文件中的不同之处在于没有导入的情况。

0 个答案:

没有答案