码迷,mamicode.com
首页 > 其他好文 > 详细

<#assign>

时间:2018-12-13 13:48:20      阅读:216      评论:0      收藏:0      [点我收藏+]

标签:capture   一个   use   模板   hash   mes   free   ali   lin   

assign 

    assign指令在前面已经使用了多次,它用于为该模板页面创建或替换一个顶层变量,

    assign指令的用法有多种,包含创建或替换一个顶层变量,或者创建或替换多个变量等,

    它的最简单的语法如下:

      <#assign name=value [in namespacehash]>,

      这个用法用于指定一个名为name的变量,该变量的值为value,

      此外,FreeMarker允许在使用assign指令里增加in子句,

      in子句用于将创建的name变量放入namespacehash命名空间中.

 

    assign指令还有如下用法:

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

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

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

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

        <#assign name [in namespacehash]>capture this</#assign>,

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

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

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

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

        如下例子:

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

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

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

<#assign>

标签:capture   一个   use   模板   hash   mes   free   ali   lin   

原文地址:https://www.cnblogs.com/Ai-Hen-Jiao-zhi/p/10113448.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!