2017-07-25 62 views
0

在我template.scss @import变量之上所有SCSS文件

@import "variables"; 
@import "reset"; 

,但我得到reset.scss

Libsass: Error: Undefined variable: "$baseFontSize". 
     on line 13 of .../sass/reset.scss 
>>   font-size:$baseFontSize; 

错误,因为它不知道variables.scss。我用更少的

variables.scss之前从来没有这个问题是我第一次@import文件应该在所有其他.scss工作进口

感谢帮助

回答

0

1)在你的重置文件检查$baseFontSize ,如果存在,则遵循以下内容:

@import需要一个文件名来导入。默认情况下,它会寻找萨斯文件直接导入,但也有少数情况下才会编译成CSS @import规则:如果文件名以http://开始

  • 如果文件名是url()
  • 如果@import有任何媒体查询。
  • 如果@import有任何媒体查询。

如果没有上述条件满足并且该扩展是.scss.sass,然后命名萨斯或SCSS文件将被导入。如果没有扩展名,Sass会尝试找到一个名称为.scss.sass的文件并将其导入。

+0

$ baseFontSize是vaiables.scss,我所有的变量和@mixin在variables.scss 用更少的我导入variables.less第一,那么所有其他进口可以读取它,在上海社会科学院没有吧 感谢您的回复,但这不是我的问题 –

0

您的变量可能在规则集(选择器块)内,因此是lexically scoped。因此,它们不在该块之外。为了规避你应该在你的variables.scss的根级别上定义所有变量,或者将!global修饰符添加到你的变量中。

$baseFontSize: 12px !global;