内置过滤器
| 名称 | 作用 | 示例 | 备注 |
|---|---|---|---|
| . | 获取对象属性(或执行方法) | 获取属性:{{ value.('foo') }}执行方法: {{ value.('trim')() }}执行带参数的方法: {{ value.('substring')(0, 3) }}链式取值语法实际上就是"."过滤器的语法糖,上述都可简写为: {{ value.foo }}、{{ value.trim() }}、{{ value.substring(0, 3) }} |
"."前面可以不加空格,支持链式写法 |
| _ | 执行函数或方法 | {{ Date.now_() }}或{{ Math.max_(1, 2, 3) }}通常情况下"_"也可以省略,如: {{ Math.max(1, 2, 3) }}或{{ fns[0]() }} |
"_"前面可以不加空格,支持链式写法 |
| # | 获取对象中的访问器属性值 | 获取value.foo中的访问器属性bar:{{ value.foo#('bar') }}或{{ value.foo.#bar }} |
"#"前面可以不加空格,支持链式写法 |
| == | 等同于js中的"=="运算符 | {{ value ==(foo) }}或{{ value == foo }} |
|
| === | 等同于js中的"==="运算符 | {{ value ===(foo) }}或{{ value === foo }} |
|
| != | 等同于js中的"!="运算符 | {{ value !=(foo) }}或{{ value != foo }} |
|
| !== | 等同于js中的"!=="运算符 | {{ value !==(foo) }}或{{ value !== foo }} |
|
| < | 等同于js中的"<"运算符 | {{ value <(foo) }}或{{ value < foo }} |
|
| <= | 等同于js中的"<="运算符 | {{ value <=(foo) }}或{{ value <= foo }} |
|
| > | 等同于js中的">"运算符 | {{ value >(foo) }}或{{ value > foo }} |
|
| >= | 等同于js中的">="运算符 | {{ value >=(foo) }}或{{ value >= foo }} |
|
| + | 等同于js中的"+"运算符 | {{ value +(foo) }}或{{ value + foo }} |
|
| - | 等同于js中的"-"运算符 | {{ value -(foo) }}或{{ value - foo }} |
|
| * | 等同于js中的"*"运算符 | {{ value *(foo) }}或{{ value * foo }} |
|
| / | 等同于js中的"/"运算符 | {{ value /(foo) }}或{{ value / foo }} |
|
| % | 等同于js中的"%"运算符 | {{ value %(foo) }}或{{ value % foo }} |
|
| ** | 乘方运算 | {{ value **(2) }}或{{ value ** 2 }} |
|
| %% | 【v0.4.4新增】除法运算后再取整数 | {{ value %%(2) }}或{{ value %% 2 }} |
|
| // | 【待废弃】同上面的%% |
{{ value //(2) }}或{{ value // 2 }} |
|
| ?: | 【v0.4.4新增】等同于js中的三目运算符 | {{ value ?:(foo, bar) }}或{{ value ?: foo }} |
只传foo一个参数时,如value值为false则返回undefined |
| ? | 【待废弃】同上面的?: |
{{ value ? (foo, bar) }} |
|
| ! | 等同于js中的"!"运算符 | {{ value | ! }}或{{ !(value) }}v0.4.4以上版本可省略括号: {{ !a.b.c }} |
|
| && | 等同于js中的"&&"运算符 | {{ value &&(foo) }}或{{ value && foo }} |
|
| || | 等同于js中的"||"运算符 | value ||(foo) }}或{{ value || foo }} |
|
| int | 转换为int值 | {{ value | int }} |
|
| float | 转换为float值 | {{ value | float }} |
|
| bool | 转换为bool值 | {{ value | bool }} |
|
| obj与: | 生成对象 | {{ obj('a' : 1, 'b' : 2) }}或{{ { a: 1, b: 2 } }} |
|
| list | 生成数组 | {{ list(1, 2, 3) }}或{{ [1, 2, 3] }} |
|
| reg | 生成正则表达式 | {{ reg('^[abc]$', 'i').test('A') }} |
与js的new RegExp(pattern, flags)相同 |
| css | 将css字符串转换为对象 | {{ css('margin-left:5px;overflow:hidden;') }}转换为: { marginLeft: '5px', overflow: 'hidden' } |
主要用于React开发 |
| .. | 根据两个整数生成数组 | {{ 0 .. 5 }} 生成数组:[0,1,2,3,4,5] |
|
| ..< | 根据两个整数生成数组,左闭右开 | {{ 0 ..< 5 }} 生成数组:[0,1,2,3,4] |
|
| <=> | 比较两个变量大小并返回三种值 | {{ a <=> b }} 如a > b,返回1;如a == b,返回0 ;如a < b,返回 -1 |
|
| capitalize | 将字符串的首字母大写 | {{ 'nornj' | capitalize }}或{{ capitalize('nornj') }} |
|
| => | 生成函数 | 待定语法,会在未来的新版中实现 |