7
我怎樣纔能有幾個不同的#nested宏中的元素?嵌套元素很少的Freemarker宏
我怎樣纔能有幾個不同的#nested宏中的元素?嵌套元素很少的Freemarker宏
你不能有不同的#nested在一個宏中的元素,它的每一個用法將輸出相同的文本。
如果您的目標是在宏中包含多個變量部分,則可以使用#assign元素。
一個頁面的例#macro允許以限定主體,頁眉和頁腳的內容:
<#macro pageTemplate header="" footer="">
${header}
<#nested >
${footer}
</#macro>
然後,可以使用#assign元件定義每個段(但不可否認具有多個命名#nested元素會更好)。
<#assign headerContent>
This is the header.
</#assign>
<#assign footerContent>
This is the footer.
</#assign>
<@pageTemplate header=headerContent footer=footerContent>
This is the nested content.
</@pageTemplate>
產生的輸出將是:
This is the header.
This is the nested content.
This is the footer.