如何在同一张图内将键的值写入另一个键

时间:2018-11-30 19:15:43

标签: sass

我正在尝试在同一图中将一个值写入另一个值。

  1. 我想获取当前地图的“默认”值并将其乘以5
  2. 我希望看到5,它可以正常工作
  3. 我希望看到25,但出现错误:«未定义变量»

$map: (
  "height": (
    "default": 5px,
    "media": (
      "768": map-get(map-get($map, "height"), "default") * 5 /* [ 1 ] */
    )
  )
);

.class {
  height: map-get(map-get($map, "height"), "default"); /* [ 2 ] */
}

@media (min-width: 768px) {
  .class {
    height: map-get(map-get(map-get($map, "height"), "media"), "768"); /* [ 3 ] */
  }
}

1 个答案:

答案 0 :(得分:0)

您可以在一个外部变量中设置默认高度:这很简单;-)

$defaultHeight:5px;

$map: (
  "height": (
      "default": $defaultHeight,
      "media": (
          "768": $defaultHeight * 5 /* [ 1 ] */
      )
  )
);

.class {
  height: map-get(map-get($map, "height"), "default"); /* [ 2 ] */
}

@media (min-width: 768px) {
  .class {
    height: map-get(map-get(map-get($map, "height"), "media"), "768"); /* [ 3 ] */
  } 
}