读书人

freemarker学习札记-assign标签

发布时间: 2012-12-20 09:53:21 作者: rapoo

freemarker学习笔记---assign标签
assign????assign指令在前面已经使用了多次,它用于为该模板页面创建或替换一个顶层变量,???assign指令的用法有多种,包含创建或替换一个顶层变量,或者创建或替换多个变量等,???它的最简单的语法如下:?????<#assign name=value [innamespacehash]>,?????这个用法用于指定一个名为name的变量,该变量的值为value,?????此外,FreeMarker允许在使用assign指令里增加in子句,?????in子句用于将创建的name变量放入namespacehash命名空间中.

?

???assign指令还有如下用法:

?????<#assign name1=value1 name2=value2 ... nameN=valueN[in namespacehash]>,

?????这个语法可以同时创建或替换多个顶层变量,此外,还有一种复杂的用法,

?????如果需要创建或替换的变量值是一个复杂的表达式,

??????则可以使用如下语法格式:

???????<#assign name [innamespacehash]>capturethis</#assign>,

??????在这个语法中,是指将assign指令的内容赋值给name变量.如下例子:

??????<#assignx>
??????<#list["星期一", "星期二", "星期三", "星期四", "星期五", "星期六","星期天"]asn>
?????${n}
?????</#list>
?????</#assign>
?????${x}
?????上面的代码将产生如下输出:

???????????????星期一 星期二 星期三 星期四 星期五 星期六 星期天

?????虽然assign指定了这种复杂变量值的用法,但是我们也不要滥用这种用法,

???????如下例子:

????????????????<#assign x>Hello${user}!</#assign>,

???????以上代码改为如下写法更合适:

????????????????<#assign x="Hello${user}!">

?

?

?

读书人网 >编程

热点推荐