You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SASS中如何创建嵌套数组?(非SCSS语法)

在SASS缩进语法中实现嵌套Map的正确方式

首先要明确:你在SCSS中写的其实是嵌套Map(并非数组),SASS的缩进语法完全支持这种结构,但你的写法缺少了关键的括号,导致解析报错。

SCSS中的嵌套Map写法(参考)

$clr: (
  prim: (
    step1: #8ef99e,
    step2: #76f789,
    step3: #5ef674,
    step4: #46f460,
    step5: #2ef34b,
    step6: #0de12c,
    step7: #0cc927,
    step8: #0ab123,
    step9: #09991e,
    step10: #078119,
    step11: #066814
  ), 
  light: (
    step1: #ffffff,
    step2: #f7f7f7,
    step3: #f0f0f0,
    step4: #e8e8e8,
    step5: #e0e0e0,
    step6: #d9d9d9
  )
);

SASS缩进语法的正确写法

SASS的缩进语法不需要大括号,但Map结构仍然需要用圆括号包裹,同时注意子Map的缩进和逗号分隔:

$clr: (
  prim: (
    step1: #8ef99e
    step2: #76f789
    step3: #5ef674
    step4: #46f460
    step5: #2ef34b
    step6: #0de12c
    step7: #0cc927
    step8: #0ab123
    step9: #09991e
    step10: #078119
    step11: #066814
  ),
  light: (
    step1: #ffffff
    step2: #f7f7f7
    step3: #f0f0f0
    step4: #e8e8e8
    step5: #e0e0e0
    step6: #d9d9d9
  )
)

你的写法错误原因

你直接去掉了所有括号,SASS解析器无法识别这是一个Map结构,所以抛出Expected expression错误。缩进语法只是替代了大括号的层级划分,但Map的核心定义(圆括号)不能省略。

内容的提问来源于stack exchange,提问作者Omaru

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 09:36:20