我可以在SASS中将Partials导入Partials吗?

时间:2017-08-03 16:28:14

标签: sass prepros

我正在使用Sass来设计一个新网站 最初我的style.scss(编译的主要SCSS文件)导入了general.scss(我在其中定义了变量)和各种页面(例如homepage.scss)。它运作良好。我试图重构homepage.scss只是导入其各个部分的Scss(例如section-a.scss)。令人惊讶的是,Sass编译器(Prepros)不再识别所有变量。

我的问题是:

  1. 我可以将部分内容导入SASS中的部分内容吗?
  2. 我可以使用在部分中声明的变量,该部分导入到所有其他部分的主scss文件(编译中)吗?
  3. 毋庸置疑,所有部分文件名都以下划线开头。

    谢谢!

3 个答案:

答案 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)

这应该很好,具体取决于您的设置,只要确保以某种方式设置层次结构即可使导入逻辑地进行,这样您就不必在定义变量等之前尝试访问变量。

如果您使用的插件/软件包一次只能从一个文件夹中获取所有文件,那么这很可能是一个问题。

我通常只是坚持使用一个文件来导入所有内容,这样更易​​于管理。不过每个人都有。