43

我试过了:

sass-convert --from scss --to css --recursive app/assets/stylesheets temp

但这只会将 css 转换为 SASS,而我想要反过来。

然后我查看了sass命令,但它看起来不像我可以传递一个目录。

4

6 回答 6

59

要进行一次性 Sass 编译而不是 编译watch,您可以从命令行执行此操作:

sass --update scss:css

要让 Sass 导入一个文件(通常是部分文件,以_文件名开头),您可以在 Sass 文件中执行此操作:

@import "_base.scss";

这样,Sass 就知道你希望包含在哪里发生

默认情况下,Sass 不能导入整个目录。然而, Sass Globbing gem可以。您可以从命令行安装它:

gem install sass-globbing

然后看它:

sass -r sass-globbing --watch sass_dir:css_dir

请注意,globbing 将按字母顺序导入文件,因此如果发生这种情况,请确保您的 CSS 将适当地级联。

于 2013-11-04T18:43:19.383 回答
18

使用sass后跟input file name and path、冒号 ( :) 和所需的命令output file name and path。如果输出文件不存在,Sass 将生成它。例如,

sass sass/main.scss:css/main.css

但是,这是一个一次性命令,每次您想要生成新的 CSS 文件时都需要运行该命令。一个更简单更方便的方法是使用 Sass 的内置--watch标志。这会监视 Sass 文件的更改,并在每次保存更改时自动运行编译命令。

sass --watch sass/main.scss:css/main.css

如果您在一个目录中有多个 Sass 文件,您可以观察该目录中任何文件的更改:

sass --watch sass:css

Sass 还有四种可用的 CSS 输出样式:nestedexpanded和. 这些可以这样使用:compactcompressed

sass --watch sass:css --style compressed

有关更多信息,请参阅Sass 文档

于 2016-11-27T00:06:45.330 回答
8

为此,只需转到您的项目目录并执行以下操作:

sass --update sass-dir:assets/css

使用sass-dir包含您的实际 sass 文件的目录和assets/css所需的输出目录。

希望这会有所帮助。

于 2016-08-09T05:25:00.703 回答
2

https://sass-lang.com/guide

在此处输入图像描述

您可以使用

sass --watch [input folder path]:[output folder path]

我尝试在新终端中运行它,然后 sass 监视文件夹并根据任何更改进行编译。

于 2021-03-20T01:14:43.307 回答
1

您可以使用compass将 Sass 文件转换为 CSS。

要初始化config.rb,请尝试:

compass init --syntax=sass --css-dir=css --javascripts-dir=js

获得配置文件后,请尝试:

compass compile

或通过明确指定文件:compass compile sass/foo.scss.


要安装它,请尝试:

sudo gem update
sudo gem install sass compass
于 2015-08-26T10:19:39.640 回答
0

你可以使用这个代码

sass --watch file.sass:file.css

或者

sass --watch folderSass:foldercss

如果你想创建 css.main 你可以使用这个代码

sass --watch sass:css --style compressed

于 2020-02-19T10:22:48.630 回答