如果在@return指令上有坏结果,则scss三元组

时间:2018-02-26 21:13:07

标签: sass node-sass

我有以下功能:

@function breakpoint-infix($bp) {
  @return if ($bp != 'lg', '--#{$bp}', '');

然后我在地图中使用了这个功能:

.dp {
  @each $bp in map-keys($grid-config) {
      $infix: breakpoint-infix($bp);
      &-none#{$infix} {
        display: none !important;
      }} }

但我没有得到预期的结果。我明白了:

.u-dp-noneif false, .u-dp --lg {
  display: none !important; }

中缀,实际应该删除'lg'

1 个答案:

答案 0 :(得分:2)

if之后你有一个额外的空格:if ($。这里if只是一个函数调用。

if函数可能实现的一个示例:

<强>萨斯:

@function user-if($condition, $true-statement, $false-statement) {
  $output: $false-statement;

  @if ($condition) {
    $output: $true-statement;
  }

  @return $output;
}

a {
  color: user-if(true, green, red);
  z-index: user-if(false, 1, 2);
}

<强>的CSS:

a {
  color: green;
  z-index: 2;
}

Sassmeister demo