使用 #macro 和 #nested 的 FreeMarker 排序行
FreeMarker ordering lines with #macro and #nested
我正在尝试创建一个宏来按字母顺序排列一段行:
<#order_lines>
import B
import A
</#order_lines>
这应该输出
import A
import B
我尝试实现的方式:
<#macro order_lines>
${myUtil.orderLines(<#nested>)}
</#macro>
宏有问题; “<#nested>”处的语法错误
Encountered "<", but was expecting one of: ...
您可以将其分配给一个变量:
<#macro order_lines>
<#local x><#nested></#local>
${myUtil.orderLines(x)}
</#macro>
另一种选择是实施 TemplateDirectiveModel 并像使用宏一样使用它。
我正在尝试创建一个宏来按字母顺序排列一段行:
<#order_lines>
import B
import A
</#order_lines>
这应该输出
import A
import B
我尝试实现的方式:
<#macro order_lines>
${myUtil.orderLines(<#nested>)}
</#macro>
宏有问题; “<#nested>”处的语法错误
Encountered "<", but was expecting one of: ...
您可以将其分配给一个变量:
<#macro order_lines>
<#local x><#nested></#local>
${myUtil.orderLines(x)}
</#macro>
另一种选择是实施 TemplateDirectiveModel 并像使用宏一样使用它。