自定义指令可以使用macro指令来定义

若不想在模版中定义

可以在java语言实现指令,

使用freemarker.template.TemplateDirectivceModel类来扩展

 

使用宏作为自定义指令

 

 

参数:

宏名称的后面位置定义变量

 

 

 

<@greet person="Fred">

因为他和<@greet person="Fred" color="black">是一样的

 

 

嵌套内容:

<#if ...> nested content</if>

 

 

 

 

宏和循环变量

 

 

 

模版中定义变量:

模版可以使用数据模型中的变量,模版本身也可以是变量

模版中定义的变量比数据模型中的同名参数有更高的优先级

 

在模版中三种类型变量

简单变量: 用assign命令或marco命令

局部变量:只在宏内可见,local命令可替换局部变量

循环变量:只在指令开始和结束标记内有效

 

 

 

 

数据模型中隐藏一个同名变量:

可以使用特殊变量globals

 

posted on 2016-06-03 16:07  Sharpest  阅读(198)  评论(0)    收藏  举报