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

Sass --watch模式无法追踪文件变更,求排查方法

排查Sass --watch 不生效的方法

以下是针对WSL2 Ubuntu环境下Sass监听失效的具体排查步骤:

  • 强制启用轮询检测:WSL2对Windows挂载目录的文件系统事件监听(inotify)存在兼容性问题,试试在命令中添加--poll参数强制轮询文件变化,修改后的npm脚本命令为:

    sass --watch --poll ./assets/scss/main.scss ./assets/css/style.css
    
  • 迁移项目到WSL本地文件系统:如果项目当前放在Windows的C盘/其他盘符(通过WSL的/mnt/c等路径访问),将整个项目移动到WSL的本地目录(比如~/projects/your-project),WSL对自身文件系统的事件监听支持更稳定,避免跨系统文件同步的延迟或失效。

  • 验证路径正确性:确保npm脚本中的路径是WSL环境下的相对/绝对路径,不要使用Windows风格的反斜杠\或盘符路径(比如C:\xxx),保持路径为Unix风格的斜杠/。

  • 检查WebStorm文件同步:如果在Windows端用WebStorm打开WSL中的项目,确认文件修改后WebStorm已同步到WSL文件系统:

    • 右键项目根目录,选择「Synchronize」手动触发同步
    • 检查WebStorm设置:Settings > Tools > Deployment > Options,确保「Upload changed files automatically to the default server」选项开启
  • 确认Sass版本一致性:检查局部项目依赖的Sass版本和全局版本是否一致,执行以下命令对比:

    # 局部项目的Sass版本
    npx sass --version
    # 全局安装的Sass版本
    sass --version
    

    若版本不一致,建议统一使用局部版本(通过npx执行),避免版本差异导致的功能异常。

  • 检查文件权限:确保WSL中项目的.scss文件拥有读写权限,执行命令查看权限:

    ls -l ./assets/scss/
    

    若权限为只读,执行chmod +w ./assets/scss/*.scss添加写入权限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 22:20:45