freemarker的自定義指令

自定義指令是freemarker裏最牛的東西,在freemarker中我們使用<#macro>指令來自定義指令。

例1:

<#macro hello><#--macro後面緊跟的是函數名-->

<#assign str="hello"/>

${str}

</#macro>

調用上面的自定義指令的方法是<@hello/>

例2:

<#macro hello num ok> <#--對於這個hello函數而言,它包含兩個參數,一個是num 一個是ok-->

<#list 1..num as n>

hello${ok}${n}

</#list>

</#macro>

在調用上面的hello函數的時候 需要傳遞參數

<@hello num=5 ok="world"/> <#--需要特別注意的是,參數名不能省略-->

如果函數指定了默認參數值

如:ok="World",那麼我們在傳遞參數的時候就可以不用傳遞這個參數。

例3:

<#nested/>指令,它用來執行指令開始和結束標記之間的模板片段

首先定義一個指令

<#macro hello>

<#nested/>

<#nested/>

</#macro>

執行指令

<@hello>奧運會</@hello>

發佈了25 篇原創文章 · 獲贊 3 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章