Lzh on GitHub

Mixin 值

混合宏也可以是值!你不能直接将混合宏作为值来书写,但你可以将混合宏的名称传递给 meta.get-mixin() 函数,以将其作为值获取。一旦你有了混合宏值,你就可以将其传递给 meta.apply() 混合宏来调用它。这使得库能够以复杂而强大的方式进行扩展。

混合宏也可以是!你不能直接将混合宏作为值来书写,但你可以将混合宏的名称传递给 meta.get-mixin() 函数,以将其作为值获取。一旦你有了混合宏值,你就可以将其传递给 meta.apply() 混合宏来调用它。这使得库能够以复杂而强大的方式进行扩展

@use "sass:meta";
@use "sass:string";

/// Passes each element of $list to a separate invocation of $mixin.
@mixin apply-to-all($mixin, $list) {
  @each $element in $list {
    @include meta.apply($mixin, $element);
  }
}

@mixin font-class($size) {
  .font-#{$size} {
    font-size: $size;
  }
}

$sizes: [8px, 12px, 2rem];

@include apply-to-all(meta.get-mixin("font-class"), $sizes);