Electron中node-sass无法递归监听css/partials目录问题求助
解决node-sass递归监听SCSS文件变化的问题
问题原因
你当前的watch:sass命令虽然添加了--watch assets/css --recursive参数,但因为将入口文件assets/css/style.scss作为核心编译目标传入,node-sass只会监听这单个文件的变化,目录监听的配置未生效。
修复方案
修改package.json里的watch:sass脚本,调整参数逻辑,让node-sass监听整个assets/css目录的同时,指定编译入口为style.scss:
"scripts": { "start": "concurrently \"npm run sass:compile\" \"electron .\" \"npm run watch:sass\"", "sass:compile": "node-sass assets/css/style.scss -o assets/css", "watch:sass": "node-sass --watch assets/css --recursive --output assets/css --output-style compressed assets/css/style.scss" }
也可以简化写法(监听目录时--recursive默认生效,可省略):
"watch:sass": "node-sass assets/css/style.scss -o assets/css --output-style compressed --watch assets/css"
额外验证
确保style.scss中对partials文件的导入路径正确,比如:
// style.scss @import './partials/fonts.scss';
这样node-sass能识别到文件依赖关系,当fonts.scss变化时,会自动触发style.scss的重新编译。
内容的提问来源于stack exchange,提问作者simon
相关产品推荐
相关产品推荐

