FreeMarker中assign指令的用法

简介: assign      assign指令在前面已经使用了多次,它用于为该模板页面创建或替换一个顶层变量,     assign指令的用法有多种,包含创建或替换一个顶层变量,或者创建或替换多个变量等,     它的最简单的语法如下:       <#assign name=value [in namespacehash]>,       这个

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}!">

目录
相关文章
|
8月前
|
索引
FreeMarker - 常用指令和宏
FreeMarker - 常用指令和宏
76 0
|
4月前
|
SQL XML Java
mybatis复习03,动态SQL,if,choose,where,set,trim标签及foreach标签的用法
文章介绍了MyBatis中动态SQL的用法,包括if、choose、where、set和trim标签,以及foreach标签的详细使用。通过实际代码示例,展示了如何根据条件动态构建查询、更新和批量插入操作的SQL语句。
mybatis复习03,动态SQL,if,choose,where,set,trim标签及foreach标签的用法
|
前端开发
26avalon - 指令ms-duplex(各表单元素用法)
26avalon - 指令ms-duplex(各表单元素用法)
55 1
|
8月前
|
Java 数据处理
JSF 中模板(template)标签指令的使用
本文介绍了JSF中模板标签的使用,通过Facelets标签指令创建网页模板。将页面分为header, content和footer三部分,分别用header.xhtml, content.xhtml和footer.xhtml定义。主模板文件通过ui:insert和ui:include将子模块组装在一起,实现页面布局。最后简要提及了JSF标签库的作用和JSTL的相关内容。
76 2
|
8月前
|
JavaScript 开发者
VUE指令: 请解释v-pre指令的作用。
`v-pre`指令在Vue中用于避免元素及子元素的编译,显示原始HTML。当需要防止模板解析,如固定文本,可使用此指令。但注意,它会忽略插值、事件绑定等。适用于提升性能,跳过无指令节点的编译。
47 0
|
8月前
|
SQL Java 关系型数据库
MyBatis的动态SQL之OGNL(Object-Graph Navigation Language)表达式以及各种标签的用法
MyBatis的动态SQL之OGNL(Object-Graph Navigation Language)表达式以及各种标签的用法
132 0
|
8月前
|
JavaScript
VUE指令: 请解释v-bind指令的作用。
VUE指令: 请解释v-bind指令的作用。
85 1
|
8月前
|
Java
FreeMarker - 四种变量的用法
FreeMarker - 四种变量的用法
358 1
|
Java
Java基本语法(13)--条件分支switch-case结构
Java基本语法(13)--条件分支switch-case结构
160 1
Java基本语法(13)--条件分支switch-case结构
Freemarker教程2(表达式和常用指令)
Freemarker教程2(表达式和常用指令)
Freemarker教程2(表达式和常用指令)