内置过滤器
名称 | 作用 | 示例 | 备注 |
---|---|---|---|
. | 获取对象属性(或执行方法) | 获取属性:{{ 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') }} |
|
=> | 生成函数 | 待定语法,会在未来的新版中实现 |