有没有办法从一个 scss 文件中输出多个 css 文件?
例子:
我有 default.sass,但我也想创建一个未缩小的 default.css 和缩小的 default.min.css。
我知道我可以通过打开两个命令提示符来做到这一点,但我希望我可以用命令将其淘汰。
谢谢。
如果您使用的是 Windows,我有一个解决方案,虽然它有点笨拙。
制作 3 个批处理文件,都在同一个文件夹中。第一个将是您实际运行的文件,另外两个是它将使用START
命令运行、抑制的程序。
@echo off
START "Regular CSS" /D%~dp0 /B "core.css.bat"
START "Minified CSS" /D%~dp0 /B "core.min.css.bat"
“* CSS”将是窗口标题。必要的,但在这种情况下未使用。"/D%~dp0" 将工作目录设置为执行目录。“/B” 禁止创建新窗口并在当前控制台中运行它。“*.bat”是要运行的批处理文件。
第二个是您的普通 CSS 文件。
@echo off
sass --watch ./core.scss:../css/core.css --style expanded --cache-location ./.core.css-cache
第三,你的缩小 CSS。
@echo off
sass --watch ./core.scss:../css/core.min.css --style compressed --cache-location ./.core.min.css-cache
您必须指定单独的缓存位置,否则编译器会爆炸。
因为START
除非用 标记,否则不会等待执行终止/WAIT
,这将在一个控制台内同时分离两个批处理文件。Ctrl+C还会提示您分别终止两个会话。
显然,随意玩弄细节,但这个一般概念对我来说很好用。
我是用jetbrain做的。拥有不同风格的多个输出很简单。只需通过不同的参数添加其他文件观察器。
对于参数输入的标准输出:
--no-cache --update $FileName$:css\$FileNameWithoutExtension$.css --style expanded
并在参数输入处缩小输出:
--no-cache --update $FileName$:css\$FileNameWithoutExtension$-min.css --style compressed
我遇到了同样的问题,在 Windows 上运行。我解决它的最简单方法是打开两个命令提示符。与style=compressed
和 另一个与style=expanded
。不是最舒适的解决方案,但它是最简单的解决方案。