SASS如何将变量设置为无效?

时间:2012-09-20 21:29:51

标签: sass

我正在尝试创建一个等于什么的变量。我试过以下......

$false:null;

- 和 -

$false:" ";

我正在尝试使用它的是......

@mixin myMixin($myVariable:"", $myOtherVariable){
    $false:null;
    @if $myVariable == $false {
       //do something
    }
    @if $myVariable != "" {
      //do something else
    }
}

@include myMixin("", $myOtherVariable);

我在这个例子中使用了两个变量,但我计划有两个以上的变量。

基本上我想要做的是可以选择排除变量而不必使用空引号。问题$false: "";是否仍然需要空引号。所以我想知道SASS中是否有东西可以指定“null / or nothing”。我以为它可能是空的。但情况似乎并非如此......

3 个答案:

答案 0 :(得分:43)

nullfalse将有效(null是最新版Sass中的新内容)。两者都适用于你的例子。 null的唯一优势是,如果将它与属性一起使用,它就会消失。

@mixin myMixin($myVariable: false, $myOtherVariable: false){
  @if not $myVariable {
     //do something
  } @else {
    //do something else
  }
}

@include myMixin(false, $myOtherVariable);

答案 1 :(得分:0)

将变量设置为' false'



if(!empty($walkdate)) {

    $walkdatefull = $walkdate->find('span',0);
    $walktimefull = $walkdate->find('span',1);

    }




答案 2 :(得分:-1)

Sass是用ruby编写的,使用nil代替null

@mixin myMixin($myVariable, $myOtherVariable){
  $false: nil;
  @if $myVariable == $false{
     color: inherit;
  } @else {
     color: $myVariable;
  }
}

p {
  @include myMixin(nil, $myOtherVariable);
}

.red {
  @include myMixin(red, $myOtherVariable);
}

Example on jsFiddle