将多个目录中的多个SASS文件编译为单独的单个目录中的多个CSS文件

将多个目录中的多个SASS文件编译为单独的单个目录中的多个CSS文件,sass,Sass,我需要将一个目录中的多个sass文件编译成另一个目录中的多个对应css文件。例如: src/folder1/file1.scss --compiles to-- public/file1.css src/folder2/file2.scss --compiles to-- public/file2.css 以下是我正在使用的命令: ./src/*/*.scss ./public 在尝试此操作之前,我只使用/src/*/*.scss编译所有.scss文件,并在各自的目录中获取相应的.c

我需要将一个目录中的多个sass文件编译成另一个目录中的多个对应css文件。例如:

src/folder1/file1.scss  --compiles to--  public/file1.css
src/folder2/file2.scss  --compiles to--  public/file2.css
以下是我正在使用的命令:

./src/*/*.scss ./public
在尝试此操作之前,我只使用
/src/*/*.scss
编译所有.scss文件,并在各自的目录中获取相应的.css文件。但是,试图将这些文件转储到其他目录中是不起作用的。相反,其中一个.scss文件将一个.scss部分导入语句导入到.scss文件本身,创建一个.scss.map文件,之后不会发生任何其他事情

SASS有这种能力吗?我尝试了上述命令的不同版本,偶尔会看到一个错误,说“public”是一个目录,这让我相信SASS不允许将目录作为输出。事实上,文档仅提供了一个输出文件作为编译SASS的示例(即SASS input.scss output.css)

我使用NPM脚本作为构建工具,所以请不要咕噜、咕噜等

*还有一件事需要注意。我刚刚尝试使用
sass--watch
而不是普通的compile命令,它完成了我需要的功能:

sass——观看src:public


我唯一的问题是,它不只是在公共场合创建css文件。相反,它会在文件夹中创建一个文件夹和一个.css和.css.map文件。SCSS似乎会为每个.SCSS文件添加一个路径,对应于
watch
所遍历的相对路径。如果不创建此额外文件夹,此解决方案将是理想的解决方案。

您必须告诉sass监视您希望它输出的文件,如下所示:

sass --watch style.scss:style.css
您甚至可以将其设置为输出压缩的css文件(每个css都会自动生成.map文件):

我通常只看一个文件,但理论上你可以看不同的scss文件,然后把它们编译成不同的css文件,不知道你为什么要这样做,但这是可以做到的

对于要分组的任何内容,请将相关文件导入到scss文件,然后将其编译为一个文件,然后重复这些步骤


(注意:我正在为节点中的上述命令运行sass gem。)

通过指定多个source:output,可以将多个sass文件编译成多个css文件,输出之间用如下空格分隔:

sass --watch src/file1.scss:dist/file1.css src/file2.scss:dist/file2.css

您可以根据需要更改src或输出路径。

我需要将多个.scss文件编译成多个.css文件,而不是将单个.scss文件编译成单个.css文件。正确,我非常确定(不是100%)您可以同时查看多个scss文件(在不同的终端窗口中),并将其输出设置为不同的css文件。如果您位于包含scss和css文件夹(如assets/scss、assets/css)的文件夹中,您是否尝试过
sass--更新scss:css
?推荐人:
sass --watch src/file1.scss:dist/file1.css src/file2.scss:dist/file2.css