Live Sass Compiler 保存无反应需检查三个硬条件:文件名不能以_开头(除非配置includeItems)、必须在已打开的项目根目录下、编码须为UTF-8(非UTF-8 with BOM)。
插件装了不代表能用。Live Sass Compiler 默认跳过所有 _*.scss 文件(Sass partial 规范),且只监听已打开的项目根目录下的文件,编码还不能是 UTF-8 with BOM——三者缺一,就静默失败,连提示都没有。
UTF-8(不是 UTF-8 with BOM)_variables.scss、_mixins.scss 这类文件必须显式加进 includeItems,例如:"**/_*.scss" 或更精确的 "src/scss/_*.scss"
只改 savePath 不够,漏掉任意一个,CSS 就可能生成到错地方、没 map、或者根本没输出。
"liveSassCompile.settings.formats":数组结构,每个对象必须含 format(expanded 或 compressed)、extensionName(固定为 ".css")、savePath(相对项目根的路径,如 "/dist/css/",开头带 / 表示从根开始)"liveSassCompile.settings.generateMap":设为 true 才生成 .css.map,否则调试时看不到原始 SCSS 行号"liveSassCompile.settings.includeItems":不写这个,所有 _ 开头的文件全被忽略,哪怕它们被 @use 引入了插件有隐藏行为,tasks.json 是直接调用 Dart Sass CLI,路径、格式、source map 全由你控制,也天然支持 @use 和模块系统。
sass --version 在 VSCode 终端能执行成功;不行就重装:npm install -g sass,macOS/Linux 用户装完必须重启 VSCodeargs 中路径用正斜杠 /,避免 Windows 下反斜杠解析失败,例如:"--watch", "src/scss/:dist/css/"
--source-map 参数才生成 map;不加则默认不生成(--no-source-map 是冗余的)sass --watch,两个进程会抢写同一个 .css 文件,导致内容错乱Live Sass Compiler 本身不刷新页面,它只管生成 CSS。要看到效果,必须让浏览器感知变化。
立即学习“前端免费学习笔记(深入)”;
savePath 一致,比如生成到 dist/css/style.css,就得写 <link rel="stylesheet" href="dist/css/style.css">
Live Server 插件:右键 HTML → Open with Live Server,它监听整个目录,CSS 更新即刷新sass --watch + Live Server,注意 Live Server 默认不监听 node_modules,但也不会误刷其他无关文件——只要 CSS 路径正确,它就能捕获变更sass 命令根本没装好、VSCode 终端 PATH 没刷新、或者 _partial.scss 被悄悄跳过——这些点不手动验证,所有设置都只是摆设。