使用 Dart 编译 SCSS 的 WebStorm 文件观察器

Mak*_*rov 3 ruby sass webstorm dart file-watcher

我发现 Sass 正在从使用 Ruby 编译到 Dart,正如他们的主页所暗示的那样 - https://sass-lang.com/。我按照那里的步骤操作,得到了 Dart 编译器,确实我可以运行他们建议的命令 -sass source/stylesheets/index.scss build/stylesheets/index.css并成功地将我的 SCSS 编译为 CSS。

我遇到的问题是当我尝试让 WebStorm 的文件观察器为我完成这一步时。当我配置文件观察器时,如下图所示:

使用 Dart 设置文件观察器

然后在更改我的 SCSS 文件时,文件观察器确实会触发,但会说:

C:\tools\dart-sdk\bin\dart.exe --no-cache --update viewQuestions.scss:viewQuestions.css 无法识别的标志:缓存,更新

进程以退出代码 255 结束

我尝试删除标志,但它会导致更多错误,所以我停止尝试。然后我放弃了用 Dart 做这件事的想法,并用 Ruby 重新配置它,使用相同的参数,如下图所示,效果很好。

使用 Ruby 设置文件观察器

所以我的问题是我做错了什么,只是 Dart 需要不同的论点,还是我错过了更多的东西。

Mak*_*rov 5

正如 LazyOne 所建议的,我按照以下步骤找到了问题的解决方案:

1)运行“where sass”命令,找到sass.bat所在的位置

2) 在WebStorm 的 File Watchers的Program字段中传递该 sass.bat 。它在这里C:\ProgramData\chocolatey\lib\sass\tools\sass.bat

3)然后我按照https://www.java.com/en/download/help/path.xml并将Dart bin文件夹从C:\tools\dart-sdk\bin添加到Win10 PATH系统环境变量

4) 最后,稍微调整一下,发现在 File Watcher's Argument 字段中,该行应该是 $FileName$ $FileNameWithoutExtension$.css,中间没有“:”,这与 Ruby 不同

这最终对我有用 SCSS 编译成功