获取 sass 地图中的前 X 行数?

Get top X number of rows in sass map?

我有这张 sass 地图:

$breakpoints: (
    xs 0 $breakpoint-sm,
    sm $breakpoint-sm + 1 $breakpoint-md,
    md $breakpoint-md + 1 $breakpoint-lg,
    lg $breakpoint-lg + 1 $breakpoint-xlg,
    xlg $breakpoint-xlg + 1 $breakpoint-xxlg,
    xxlg $breakpoint-xxlg + 1 $no-limit
) !default;

现在我想在@each 循环中获得前四个"rows",这将如何实现?

因为您知道要使用的值,您可以这样做:

@each $key, $value in map-remove($breakpoints, xxlg, xlg) {
    @media (max-width: $value ){
        // dummy content printing out the breakpoint
        body::before { content: '#{$key}' }
    }
}

您没有循环 x 个项目,但删除了不需要的项目。
请注意,它不会改变您的原始地图。