stylus中文版参考文档之自检API(Introspection API)
回到相关文章 »文档:
- 选择器(Selectors)
- 变量(Variables)
- 插值(Interpolation)
- 运算符(Operators)
- 混合书写(Mixins)
- 方法(Functions)
- 关键字参数(Keyword Arguments)
- 内置方法(Built-in Functions)
- 其余参数(Rest Params)
- 注释(Comments)
- 条件(Conditionals)
- 迭代(Iteration)
- @import
- @media
- @font-face
- @keyframes
- @extend
- url()
- CSS字面量(CSS Literal)
- CSS样式解析(CSS Style Syntax)
- 字符转码(Char Escaping)
- 可执行性(Executable)
- 错误报告(Error Reporting)
- 连接中间件(Connect Middleware)
- 自检API(Introspection API)
- JavaScript API
- Nib下CSS扩展(CSS3 Extensions with Nib)
- Stylus在线体验!
详细:
自检API(Introspection API)
自检API
Stylus支持自我检测的API, 这允许混写以及函数反应调用者的相关性。
混写(mixin)
mixin
这个局部变量在函数体内自动赋值。如果调用的函数在根级别,则mixin
包含字符串root
, 如果其他情况,则是block
, 如果调用函数有返回值,最终为false
.
下面这个例子中,我们定义reset()
, 根据其是混入了根部,还是混入块状域,还是混入返回值中,来修改其值,并作为foo
属性的值呈现:
reset() if mixin == 'root' got root true else if mixin got 'a mixin' else 'not a mixin' reset() body reset() foo reset()
编译为:
got { root: true; } body { foo: "not a mixin"; got: "a mixin"; }