更新扩展类中的SASS变量

时间:2015-10-26 23:07:10

标签: sass

有没有办法更新扩展类中的SASS变量?例如,我目前有这个:

    Scanner scan = new Scanner(System.in);
    int n = scan.nextInt();
    boolean hasOne = false;
    int rem;

    for(int i = n; i > 0; i = i / 10)
    {   

       rem = i % 10;

        if(rem == 1)
            hasOne = true;
    }
    if(hasOne){
        System.out.println("Has 1");
    }else{
        System.out.println("Has No 1");
    }

我想将 .menu-highlight-1 { $child: 1; a { &:nth-child(#{$child}) { color: red !important; } } } 变量更新为下一个元素,所以在我的尝试中,我扩展了$child类,然后对.menu-highlight-1变量进行了更改。但是,所有这一切都突出了扩展类中的相同项目。

$child

这有可能吗?

1 个答案:

答案 0 :(得分:0)

使用SASS mixin解决此问题的方法。感谢@cimmanon和这个主题:Updating variables created by lighten/darken functions by modifying the original base color afterwards

@mixin _menuHighlight($child) {
  a {
      &:nth-child(#{$child})  {
      color: red !important;
    }
  }
}

  .menu-highlight-1 {
    @include _menuHighlight(1);
  }

  .menu-highlight-2 {
    @include _menuHighlight(2);
  }