Stylus变量范围如何跨文件工作?

时间:2013-02-20 21:33:58

标签: css stylus

理想情况下,我想设置一个文件“colors.styl”,我可以在其中定义网站上使用的所有颜色,如下所示:

// --------------- GENERAL VARIABLE DEFINITIONS
$beige        = #F2F2F2
$darkGrey     = #282828
$errorRed     = #B94A48

当我尝试在其他文件中访问这些变量时,我只返回变量名而不是已解析的值:

body {
  background-color: $beige;

我正在按顺序编译文件,所以colors.styl先于其余部分。变量是否会在Stylus中的文件中丢失范围?

2 个答案:

答案 0 :(得分:11)

除了在每个文件中执行@import "colors"之外,您还可以创建一个主加载器文件,如下所示:

 @import "colors"

 @import "styles1"
 @import "styles2"

colorss.styl中定义的变量将在styles1.styl和styles2.styl中可用。手写笔的输出将是一个包含所有样式的大型css文件。

答案 1 :(得分:0)

是的,变量会在文件中失去范围。

但是你可以在其他文件中@import color来访问变量。