SASS-是否可以将字符串转换为变量调用/名称

时间:2018-10-05 09:53:41

标签: sass

是否可以使用SASS将字符串转换为变量调用?我创建了一个函数来检查是否已定义特定变量。如果已定义,则必须返回该变量的值。否则,它必须返回我的默认值。查看示例代码:

@function asset-var-exists($variable, $desiredResult) {
  $returnedValue: $desiredResult;

  @if variable-exists($variable) {
    $returnedValue: $variable;
  } 

  @return $returnedValue;
}

在这种情况下,第一个参数($variable)将作为字符串返回,而不是该变量的值。这是很合逻辑的,因为该函数的用法如下:

$color-green: #228B22;
background: something-var-exists(color-green, #008000);

所以something-var-exists(color-green, #008000)的结果是color-green。我希望它返回$color-green的值,即#228B22

这可能吗?

-

我被要求定义为什么这个问题不重复(我真的看不到我和这个问题之间的联系):Creating or referencing variables dynamically in Sass

  • 以上问题基于静态前缀($ foo-)。我没有静态前缀,因此没有定向点可以将我的字符串“转换”为变量调用。通过编写“ $ foo”,您已经在解释其中涉及一个变量。就我而言,我不能那样做。我只有一个字符串,没有别的。
  • 答案基于已定义/已知的值。在我的示例中,没有任何内容。因为我的样式是完全动态的,并且可以在任何sass项目中使用。
  • 该问题不包含任何检查以查看变量是否已存在

0 个答案:

没有答案