我发现Sass正在从使用Ruby编译成Dart,正如他们的主页建议 - https://sass-lang.com/。我按照那里的步骤,得到了我自己的Dart编译器,我确实可以运行他们建议的命令 - sass source/stylesheets/index.scss build/stylesheets/index.css
并成功将我的SCSS编译为CSS。
我遇到的问题是当我尝试让WebStorm的File Watcher为我做这一步时。当我配置文件监视器时,如下图所示:
然后在更改我的SCSS文件时,文件监视器确实触发了,但是说:
C:\ tools \ dart-sdk \ bin \ dart.exe --no-cache --update viewQuestions.scss:viewQuestions.css无法识别的标志:缓存,更新
处理以退出代码255结束
我尝试删除标志,但它导致更多错误,所以我停止尝试。然后我放弃了用Dart做它并用Ruby重新配置它的想法,使用相同的参数,如下图所示,它完美地工作。
所以我的问题是我做错了什么,难道只是Dart需要不同的论点,或者我错过了更多的东西。
正如LazyOne建议的那样,我通过以下步骤找到了解决问题的方法:
1)运行“where sass”命令,找到sass.bat所在的位置
2)在WebStorm文件监视器的程序字段中传递sass.bat。它在这里C:\ ProgramData \ chocolatey \ lib \ sass \ tools \ sass.bat
3)然后我跟着https://www.java.com/en/download/help/path.xml并将C:\ tools \ dart-sdk \ bin中的Dart bin文件夹添加到Win10 PATH系统环境变量
4)最后,通过一些调整发现,在File Watcher的Argument字段中,该行应为$ FileName $ $ FileNameWithoutExtension $ .css,中间没有“:”,与Ruby不同
您实际上不需要下载单独的Dart SDK,因为Sass安装程序提供了一个。
看起来你已经关注了installation instructions,现在可能已经在c:\tools\dart-sass
安装了Sass for Windows,所以你现在有了一个名为c:\tools\dart-sass\sass.bat
的文件
这是您应该在Tool to run on changes | Program
字段中添加到WebStorm(替换c:\tools\ruby....bat
行)。
添加到正确的答案,删除参数字段中的--no-cache
适合我。
添加正确的答案:对于那些是mac用户并且还没有弄明白的人来说,这对我有用:
sudo gem uninstall ruby
)sass path_to_file/your_sass_file.scss path_to_file/your_output_file.css
usr/local/bin/sass
(这是我默认安装sass的地方)$FileName$ $FileNameWithoutExtension$.css
(--update
参数也可以,但dart sass不接受--cache argument
)