Answers:
_(下划线)是scss的一部分。这意味着样式表将被导入(@import)到主样式表,即styles.scss。使用partials的优点是您可以使用许多文件来组织代码,并且所有内容都将被编译到一个文件中。
import '_file';
,import 'file';
同样的事情对吗?”
_
呢?我正在考虑从文件名中删除下划线。Sass文件是否是部分文件(即,可导入的代码),应取决于其在项目体系结构中的位置,而不是文件的命名方式。
_
如果您以合理的方式组织项目,则绝对不需要s。
下划线开头的sass文件是部分文件。这是将样式分成逻辑部分的一种好方法。使用时,这些文件都会在编译时合并@import
。
从Sass语言指南中:
您可以创建部分Sass文件,其中包含一些CSS片段,您可以在其他Sass文件中包含这些片段。这是模块化CSS并帮助使事情易于维护的好方法。局部文件只是一个以下划线开头的Sass文件。您可能将其命名为_partial.scss。下划线让Sass知道该文件只是部分文件,不应将其生成为CSS文件。Sass局部变量与@import指令一起使用。
如果在文件名前面加上“ _”,则除非将其导入到另一个不完整的sass文件中,否则不会在CSS中生成它。
假设您的文件夹结构是这样的
/scss
style.scss
_list.scss
/css
如果您运行命令
sass --watch scss:css
仅将创建style.css和style.css.map文件,sass编译器将省略_list.scss而不将其内容转换为CSS文件。
/scss
style.scss
_list.scss
/css
style.css
style.css.map
可以使用局部的唯一方法是使用以下命令将它们导入到另一个.scss文件中:
@import 'list.scss';
如果删除_list.scss前面的“ _”,则命令的结果将为
/scss
style.scss
list.scss
/css
style.css
style.css.map
list.css
list.css.map
使用partials的主要目的是将我们的CSS代码分解为易于维护的几部分。希望这可以帮助。谢谢。
如果在没有下划线前缀的情况下在节点环境中使用node-sass的监视程序,也会导致错误消息,请参阅https://github.com/sass/node-sass/issues/2762
import '_file';
,import '_file';
同样的事情对吗?