首页 > 解决方案 > 为什么 dart-sass 不能读取应该创建输出文件的目录?

问题描述

我无法让 dart-sass 观察 SCSS 文件以进行更改,然后生成 CSS 文件。我的输入文件在我的项目的静态目录中:

/srv/https/html/repo/static/scss/styles.scss

我希望在此处创建和写入输出文件:

/var/www/html/styles.css

我正在使用最新版本的 dart-sass for Linux 并从 repos 目录运行此命令:

sass --watch static/scss:/var/www/html

该命令产生此错误:

Error reading ../../../../var/www/html: Creation failed.

如果我添加输入文件的完整路径和输出文件的相对路径,如下所示,我会得到相同的错误:

sass --watch /srv/https/html/repo/static/scss:../../../../var/www/html

现在我应该补充一点,目标目录/var/www/html是通过 NFS 交叉挂载的。起初我认为这是一个权限问题,因为该目录755与我在使用 Sass 之前创建的现有 styles.css 文件一样具有权限。但即使我将父目录和 CSS 文件的权限更改为777. dart-sass 是否不适用于 NFS 文件系统,还是我需要以不同的方式运行命令?我应该补充一点,如果我只是运行 sass 命令--watch并指定输入和输出文件的路径,sass 编译不会出错。

标签: csssass

解决方案


推荐阅读