SCSS mixin 参数中的 ... 是什么意思?

What do the ... mean in a SCSS mixin argument?

我正在查看由其他人 (Chris Eppstein) 创建的 gradients mixin。在主 mixin 的参数列表中,最后一个参数后有三个点。

@mixin linear-gradient($direction, $color-stops...){

它们是什么意思?我无法在文档中找到它,主要是因为...在许多代码示例中用于显示他们何时跳过不相关的部分。

谢谢

在这种情况下,$color-stops 是一个 arglist。它为您提供了将任意数量的参数传递给混入并根据需要使用它的可能性。

例如:

@mixin linear-gradient($direction, $color-stops...){
    background-color: nth($color-stops,1);
    color: nth($color-stops,2);
}

你可以这样调用这个函数:

.foo {
  @include linear-gradient(to right, blue, white, red, black);
}