freearker相当中的一节指令macro也是自定义函数指令





freemarker中macro自定义指令

<#--在freemarker中是通过macro来自定义函数的 在macro 后中第一个是这个指令的名称-->
<#macro hello>
     您好:${user.username}

<#--调用自定义函数是通过@来调用-->
<@hello/>
<#--创建一个带有参数的的函数-->
<#macro hello name>
   获取参数的值:${name}

<@hello name="管理员"/>

<#macro list items>
  <#list items as item>
   ${item}
 

<@list items=[1,2,3,4,5,6]/>


<#macro listnum num>
 <#list 1..num as n>
  ${n}
 

<@listnum num=5>
<
/@listnum>


nested 嵌入

<#macro list_desc num=3>
 
 <#list 1..num as n>
  <#nested n/>
 

<@list_desc num=7;n>
   

  • ${n}.abc

  • </@list_desc>

     

    在macro自定义指令中 在定义变量的时候 不要使用assign来定义,而我们使用要使用local来定义,local定义的就是局部变量

     

    你可能感兴趣的:(FreeMarker)