为什么在scss中把_放在文件名前面?
_filename。为什么它需要_ ?
为什么在scss中把_放在文件名前面?
_filename。为什么它需要_ ?
当前回答
_(下划线)是scss的部分。这意味着样式表将被导入(@import)到主样式表,即styles.scss。使用部分的好处是,你可以使用许多文件来组织你的代码,所有的东西都将在一个文件中编译。
其他回答
此外,如果不使用下划线前缀,在节点环境中使用node-sass的监视器将导致错误消息,请参阅https://github.com/sass/node-sass/issues/2762
当你在文件名前包含“_”时,它不会生成到CSS中,除非你将它导入到另一个非局部的sass文件中。
假设您的文件夹结构是这样的
/scss
style.scss
_list.scss
/css
如果执行该命令
sass --watch scss:css
只会创建style.css和style.css.map文件,sass编译器会省略_list. map文件。而不需要将其内容转换为CSS文件。
/scss
style.scss
_list.scss
/css
style.css
style.css.map
使用partial的唯一方法是将它们导入另一个.scss文件
@import 'list.scss';
如果你移除_list前的“_”。SCSS命令的结果将是
/scss
style.scss
list.scss
/css
style.css
style.css.map
list.css
list.css.map
使用部分的主要目的是将我们的CSS代码分解成几个更容易维护的部分。希望这能有所帮助。谢谢。
_用于表示偏导数。这些部分包含预处理阶段所需的变量和内部函数,它们不需要被编译为css。_ partial templates包含utils, SCSS局部变量和编译SCSS到css所需的函数。
带有_(下划线)的文件将被编译器忽略。然而,所有这些文件都被导入到一个单一的主SCSS文件(即styles.scss),这实际上是被编译的文件(它的名称中没有_(下划线))
最终的目标是只编译一个SCSS文件,因此只有一个CSS文件,这有很多优点。
_(下划线)是scss的部分。这意味着样式表将被导入(@import)到主样式表,即styles.scss。使用部分的好处是,你可以使用许多文件来组织你的代码,所有的东西都将在一个文件中编译。