使用宏进行继承的页面布局设计。我的主要网页布局看起来像这样
mainlayout.ftl
<div>
<@head/>
<@body/>
</div>
现在包含mainlayout.ftl的页面看起来像这样,并可能提供head宏
page1.ftl
<#include "/mainlayout.ftl"/>
<#macro body>
...........
</#macro>
由于maylayout.ftl需要@head宏,因此在页面呈现期间会引发错误。
有没有办法使@head宏为可选?
答案 0 :(得分:0)
在mainlayout.ftl中定义一个空头宏,您将必须在page1.ftl中对其进行定义。
mainlayout.ftl
<#macro head></#macro>
<div>
<@head/>
<@body/>
</div>
page1.ftl
<#include "/mainlayout.ftl"/>
<#macro body>
...........
</#macro>