Module 触控笔中的可变范围

Module 触控笔中的可变范围,module,scope,stylus,Module,Scope,Stylus,手写笔如何处理变量范围 -- 1-所有变量都是全局变量吗 $foo = red // is $foo global? 2-与类似,是否有任何导出/要求等效项 $foo = @import 'foo' body { color: $foo } 3-CSS块中声明的变量如何,可能使用mixin: $foo = green bar() $foo = yellow // is it the same $foo ? $baz = blue. // local or implied glo

手写笔如何处理变量范围

--

1-所有变量都是全局变量吗

$foo = red // is $foo global?
2-与类似,是否有任何
导出
/
要求
等效项

$foo = @import 'foo'

body { color: $foo }
3-CSS块中声明的变量如何,可能使用mixin:

$foo = green

bar()
  $foo = yellow // is it the same $foo ?
  $baz = blue.  // local or implied global?

ul {

  background: $foo // green or yellow? red?

  $foo = red

  li {

    $foo = pink 

  }

  color: $foo // pink?

  bar() // what about $foo now?

}
--

如果您对此有任何澄清或文件,我们将不胜感激


谢谢你

如果你稍微改写了你问题的第3部分:

$foo = green                                                                
p('global: $foo is ' $foo)                                                  

bar()                                                                       
  $foo = yellow                                                             
  p('In bar(): $foo is ' $foo)                                              
  $baz = blue                                                               

p('$baz outside of bar() is ' $baz)                                         

ul {                                                                        

  background: $foo                                                          
  p('In ul: $foo is ' $foo)                                                 

  $foo = red                                                                
  p('In ul: now $foo is ' $foo)                                             

  li {                                                                      

    $foo = pink                                                             
    p('In ul li: $foo is ' $foo)                                            

  }                                                                         

  color: $foo // pink?                                                      
  p('Back in ul: now $foo is ' $foo)                                        

  bar()                                                                     
  p('what about $foo now? ' $foo)                                           
}
然后,手写笔将对其进行应答:

$ stylus test.styl 
inspect: 'global: $foo is ' (#008000)
inspect: '$baz outside of bar() is ' $baz
inspect: 'In ul: $foo is ' (#008000)
inspect: 'In ul: now $foo is ' (#f00)
inspect: 'In ul li: $foo is ' (#ffc0cb)
inspect: 'Back in ul: now $foo is ' (#f00)
inspect: 'In bar(): $foo is ' (#ff0)
inspect: 'what about $foo now? ' (#f00)
  compiled test.css
与2有关的问题/