我正在使用Sass来设计一个新网站 最初我的style.scss(编译的主要SCSS文件)导入了general.scss(我在其中定义了变量)和各种页面(例如homepage.scss)。它运作良好。我试图重构homepage.scss只是导入其各个部分的Scss(例如section-a.scss)。令人惊讶的是,Sass编译器(Prepros)不再识别所有变量。
我的问题是:
毋庸置疑,所有部分文件名都以下划线开头。
谢谢!
答案 0 :(得分:2)
必须与您放置进口的订单有关。
这应该是这样的:(我不记得SCSS语法是什么......但这应该解释)
// primary file master.scss or whatever importing partials...
@import 'reset';
@import 'variables';
@import 'styles-etc';
// variables file / importing other partials
@import 'variables/space';
@import 'variables/color';
@import 'variables/break-points';
// styles file
body {
background: $color; // from variables/color...
}
我从来没有建议任何人使用引导程序......但是如果你看一下它的结构,你可能会看到很多这样的东西 - 作为一个例子
答案 1 :(得分:1)
是的,可以将部分内容导入Sass中的部分内容。此外,只要它们全部直接或间接导入同一主sass文件,就不应该使用任何其他部分中的一个部分中定义的变量。
我遇到的错误是导入主页时未指定主页部分所在的文件夹的结果。导入代码是:
@import 'partial';
虽然我应该使用的代码是:
@import 'home/partial'
答案 2 :(得分:0)
这应该很好,具体取决于您的设置,只要确保以某种方式设置层次结构即可使导入逻辑地进行,这样您就不必在定义变量等之前尝试访问变量。
如果您使用的插件/软件包一次只能从一个文件夹中获取所有文件,那么这很可能是一个问题。
我通常只是坚持使用一个文件来导入所有内容,这样更易于管理。不过每个人都有。