在mixin中调用类变量 - Sass

时间:2013-11-26 19:09:20

标签: sass zurb-foundation frontend

我有两个样式标题的类。然后我需要创建一个mixin来自定义一个背景模式,具体取决于显示的标题。

是否可以在我的mixin中使用$ has-dept变量?

    //header 1
     .dt-style-user-bar-without-departments {
          @extend .dt-style-user-bar;
          $has-dept: false;
          /...
    }

    //header 2
    .dt-style-user-bar-with-departments {
          @extend .dt-style-user-bar;
          $has-dept: false;
          //...
    }

    //intending to get $has-dept var to give the proper background color   
    @mixin set-reveal-bg-color(){
          @extend $has-dept;
          @if $has-dept {
            background: green !important;
          }
          @else {
            background: blue !important;
          }
    }

   //prints the background color in the modal overlay class
    .reveal-modal-bg{
      @include set-reveal-bg-color()
    }

*输出:错误scss / app.scss(scss的第471行/ _dt_style.scss:未定义的变量:“$ has-dept”。)*

1 个答案:

答案 0 :(得分:0)

是。只需启用变量插值,如下所示:

@extend #{$has-dept};

这使得Sass在那里评估变量的值。

以下是Sass插值的更多内容:http://sass-lang.com/documentation/file.SASS_REFERENCE.html#interpolation_