This Domain(Admin5.com) is for Sale:

Velocity用户手册---中文版

时间:2007-10-22  来源:不详  作者:林子

#foreach ($a in $foo )$a

#end please.

这两种的输出结构将一样。

其他特性和杂项

math 在模板中可以使用Velocity内建的算术函数,如:加、减、乘、除

#set ( $foo = $bar 3 )

#set ( $foo = $bar - 4 )

#set ( $foo = $bar * 6 )

#set ( $foo = $bar / 2 )

当执行除法时将返回一个Integer类型的结果。而余数你可以使用%来得到:

#set ( $foo = $bar % 5 )

在Velocity内使用数学计算公式时,只能使用像-n,-2,-1,0,1,2,n这样的整数,而不能使用其它类型数据。当一个非整型的对象被使用时它将被logged并且将以null作为输出结果。

Range Operator

Range operator可以被用于与#set和#foreach statement联合使用。对于处理一个整型数组它是很有用的,Range operator具有以下构造形式:

[n..m]

m和n都必须是整型,而m是否大于n则无关紧要。例子:

First example:

#foreach ( $foo in [1..5] )

$foo

#end

Second example:

#foreach ( $bar in [2..-2] )

$bar

#end

Third example:

#set ( $arr = [0..1] )

#foreach ( $i in $arr )

$i

#end

Fourth example:

[1..3]

上面四个例子的输出结果为:

First example:

1 2 3 4 5

Second example:

2 1 0 -1 -2

Third example:

0 1

Fourth example:

[1..3]

注意:range operator只在#set和#foreach中有效。

Advanced Issue:Escaping and!

当一个reference被“!”分隔时,并且在它之前有逃逸符时,reference将以特殊的方式处理。注意这种方式与标准的逃逸方式时不同的。对照如下:

#set ( $foo = “bar” )

特殊形式标准格式

Render前Render后Render前Render后

$\\!foo$!foo\\$foo\\$foo

$\\!{foo}$!{foo}\\$!foo\\$!foo

$\\\\!foo$\\!foo\\$!{foo}\\$!{foo}

$\\\\\\!foo$\\\\!foo\\\\$!{foo}\\bar

Velocimacro杂记

Can I user a directive or another VM as an argument to a VM?

看完这篇,您有何感觉呢?

文章评论

共有位Admini5网友发表了评论 查看完整内容

24小时热门信息