部分Sass文件中的下划线

Squ*_*ler 38 sass gulp-sass

是否有必要使用.scss部分文件以下划线开头?文档指出partial应该以下划线开头,因为文件否则会编译为CSS文件.

但是我注意到gulp-sass将没有下划线的文件编译成一个完整的CSS文件就好了.

Col*_*con 52

1.如果您不希望将它们生成到css文件中,则必须以下划线开头.

2.一个scss文件可以导入另一个文件没有下划线,仍然正确编译.

举个例子:

sass
    +-- base
    |   +-- _normalize.scss 
    +-- components  
    |   +-- site-header.scss
    +-- utilities       
    |   +-- _icons.scss
    +-- site.scss
Run Code Online (Sandbox Code Playgroud)

在这里我们可以看到site-header.scss并且site.scss没有下划线.如果我运行gulp任务来编译sass文件夹中的任何内容,则会输出两个文件.

site-header.css
site.css
Run Code Online (Sandbox Code Playgroud)

我们不想生成site-header.css但是因为我们省略了下划线,编译器只忽略带有下划线的css文件并为其生成文件.

site-header.scss仍然可以site.scss用一个引用@import

@import 'components\site-header';
Run Code Online (Sandbox Code Playgroud)

无论是否以下划线为前缀,这都会产生相同的结果.

  • 如果你将一个没有前置下划线的Sass文件导入到另一个Sass文件中,那也没有前置下划线,那么只会生成一个CSS文件,所以声明`Partials必须以下划线开头,如果你不希望它们是生成一个css文件.并不是真的 - 我可以让部分不会以一个也不会生成CSS文件的下划线开头.这取决于你如何将文件发送到编译器,对吧? (11认同)