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

SASS使用@use引入模块后通过命名空间访问变量报错如何解决?

SASS使用@use规则访问模块变量报错解决方案

根本原因

你当前使用的VSCode原版Live SASS扩展底层依赖已废弃的LibSass编译器,不支持Sass 1.23.0版本才推出的@use模块化规则,无法识别命名空间调用变量的命名空间.$变量名语法,因此抛出CSS表达式无效的报错。

解决方案

方案1:继续使用@use模块化规则

更换为支持Dart Sass的新版Live SASS扩展:

  • 卸载当前已安装的旧版Live SASS Compiler
  • 搜索安装由glenn2223维护的新版「Live Sass Compiler」,该版本默认使用Dart Sass内核,完全支持@use、@forward等现代Sass特性
  • 禁用旧扩展后重启VSCode,重新编译即可正常识别命名空间变量语法

方案2:兼容旧版编译器,改用@import规则

如果不想更换扩展,可改用旧版Sass支持的导入规则:

  1. 将style.sass首行的@use 'abstracts/branding' as branding替换为@import 'abstracts/branding'
  2. 删除所有变量前的命名空间前缀,把branding.$primary、branding.$bright、branding.$secondary分别改为$primary、$bright、$secondary
  3. 重新编译即可正常运行

注意:

  • 两种方案均无需修改_branding.sass文件的内容,下划线前缀的partial文件规则对新旧语法都适用
  • 切换新扩展后如果仍报错,检查abstracts文件夹是否和style.sass存放在同一级目录,确保导入路径正确

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 09:36:01