Velocity用户手册---中文版
## \\#include( “a.txt” ) renders as \\#include( “a.txt” )
\\#include( “a.txt” )
## \\\\#include ( “a.txt” ) renders as \\<contents of a.txt>
\\\\#include( “a.txt” )
在对在一个directive内包含多个script元素的VTL directives使用逃逸符时要特别小心(比如在一个if-else-end statement内)。下面是VTL的if-statement的典型应用:
#if ( $jazz )
Vyacheslav Ganelin
#end
如果$jazz是ture,输出将是:
Vyacheslav Ganelin
如果$jazz是false,将没有输出。使用逃逸符将改变输出。考虑一下下面的情况:
\\#if ( $jazz )
Vyacheslav Ganelin
\\#end
现在无论$jazz是true还是false,输出结果都是:
#if ( $jazz )
Vyacheslav Ganelin
#end
事实上,由于你使用了逃逸符,$jazz根本就没有被解析为boolean型值。在逃逸符前使用逃逸符是合法的,例如:
\\\\#if ( $jazz )
Vyacheslav Ganelin
\\\\#end
以上程序的显示结果为:
\\ Vyacheslav Ganelin
\\
但是如果$jazz为false,那么将没有输出。(书上说会没有输出,但是我觉得应该还有有“\\”字符被输出。)
VTL:Formatting issues
尽管在此用户手册中VTL通常都开始一个新行,如下所示:
#set ( $imperial = [ “Munetaka”, “Koreyasu”, “Hisakira”, “Morikune” ] )
#foreach ( $shogun in $imperial )
$shogun
文章评论
共有位Admini5网友发表了评论 查看完整内容