在OSX 10.13.3上使用Dart/Sass遇“无法打开文件”错误求助
解决dart-sass执行时"Cannot open file"错误的方案
我来帮你搞定这个问题!从你描述的报错信息来看,核心问题是dart-sass找不到你指定的main.scss文件,或者在读取文件时遇到了路径/权限问题。咱们一步步排查解决:
先确认文件存在且路径匹配
这是最常见的原因!先在终端里执行pwd查看当前工作目录,确认你的main.scss确实保存在这个目录下。接着执行ls -l列出目录里的所有文件,仔细核对文件名:- 注意大小写:macOS默认文件系统大小写不敏感,但终端命令可能因为系统设置严格区分,比如别把
main.scss写成Main.scss或者main.SCSS - 如果文件不在当前目录,要传入完整的绝对路径,比如:
sass ~/Projects/my-web/css/main.scss ~/Projects/my-web/css/main.css
- 注意大小写:macOS默认文件系统大小写不敏感,但终端命令可能因为系统设置严格区分,比如别把
检查文件读取权限
有时候文件权限会导致无法读取,执行以下命令查看main.scss的权限:ls -l main.scss权限列(比如
-rw-r--r--)里需要包含r(读权限),如果没有的话,用这条命令添加读权限:chmod +r main.scss简化命令排除参数干扰
先去掉--trace参数试试基础命令,看是不是trace参数引发的兼容问题(虽然概率很低,但可以快速排除):sass main.scss main.css更新dart-sass到最新版本
你安装的1.1.1版本是非常早期的dart-sass版本,老版本可能存在一些路径解析的bug。用Homebrew更新到最新版:brew update && brew upgrade dart-sass更新完成后再执行编译命令,大概率能解决一些潜在的兼容性问题
我之前刚接触Sass的时候也踩过类似的坑,当时是因为终端的工作目录和我保存文件的目录不一致,折腾了半天!所以一定要先确认当前路径和文件路径匹配哦~
内容的提问来源于stack exchange,提问作者Ralph Frost
相关产品推荐
相关产品推荐

