13.2. 转义 有效的 VTL 指令
某些情况使用Velocity可能会觉得很烦恼。逃避特殊符是处理出现在你的模板中VTL特殊符有效方法,就是使用反斜杠(“\”)。
#set( $email = "foo" )
假如Velocity在你的模板中遇到$email,它会搜索上下文,得到相应的值。这里的输出是foo,因为$email被定义了。假如$email没有被定义,输出会是$email。
设想$email被定义了(例如,它的值是foo),而且你想输出$email。这里有几种方法能达到目的,但是最简单的是使用逃避符。
## The following line defines $email in this template:
#set( $email = "foo" )
将显示为:
foo
注意到“\”屏蔽了左边的“$”。屏蔽左边规则,使得\$email显示为\$email。那些例子与$email没有定义相比较。
将显示为:
\\$email\\\$email
注意Velocity处理定义了的references与没有定义的不一样。这里set$foo的值为gibbous。
#set( $foo = "gibbous" )
$moon = $foo
输出会是:$moon=gibbous,$moon
按照字面上输出因为它没有定义,gibbous替代$foo输出。避开VTL的directives还有其他方法,在Directives那章节会更详细描述。
当前内容版权归 wizardforcel 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 wizardforcel .