Loops Sass-循环第n个子(#{$i})目标的数字数组

Loops Sass-循环第n个子(#{$i})目标的数字数组,loops,sass,Loops,Sass,我正在创建一个mixin来隐藏从include语句发送的第n个子值的列(th和td)。我的代码中缺少了什么,或者更好的是,这是最好的方法吗?即使纠正了它,它仍然可以工作吗 包含语句: $hidden-columns: (2, 3, 6, 9, 17); @include hide-columns($hidden-columns); @mixin hide-columns($columns) { @for $i from 0 to length($columns) { th:nth-

我正在创建一个mixin来隐藏从include语句发送的第n个子值的列(th和td)。我的代码中缺少了什么,或者更好的是,这是最好的方法吗?即使纠正了它,它仍然可以工作吗

包含语句:

$hidden-columns: (2, 3, 6, 9, 17);
@include hide-columns($hidden-columns);
@mixin hide-columns($columns) {
  @for $i from 0 to length($columns) {
    th:nth-child(#{$columns[ $i ]}),
    td:nth-child(#{$columns[ $i ]}) {
      display: none;
    }
  }
}
Mixin:

$hidden-columns: (2, 3, 6, 9, 17);
@include hide-columns($hidden-columns);
@mixin hide-columns($columns) {
  @for $i from 0 to length($columns) {
    th:nth-child(#{$columns[ $i ]}),
    td:nth-child(#{$columns[ $i ]}) {
      display: none;
    }
  }
}

我最终使用了@each而不是循环(如下),但是,如果有人愿意发布,我仍然希望知道我的原始帖子中循环的正确语法,我会将其标记为答案

@mixin hide-columns($columns) {
  @each $col in $columns {
    th:nth-child(#{$col}),
    td:nth-child(#{$col}) {
      display: none;
    }
  }
}