使用FreeMarker,我希望能夠在不同的模板中加載不同的樣式表或JavaScript文件。我的問題可能在我的實施中。使用Freemarker每頁使用不同的CSS或Java腳本
我有一個宏觀佈局,看起來像這樣:
<#macro layout>
<!DOCTYPE html>
<html lang="en">
<head>
<!-- common javascript and css references here -->
</head>
<body>
<div class="container">
<!-- header stuff -->
<#nested>
<!-- footer stuff -->
</div>
</body>
</html>
</#macro>
我用這個在所有的模板是這樣的:
<!-- "declare" specific css or js here -->
<@layout.layout>
<div id="mapid">
<!-- use specific css or js -->
</div>
</@layout.layout>
在我的一些模板中,我想使用適用於常見情況的特定樣式表或JavaScript庫。什麼是最好的方法呢?
我試過將變量傳遞給佈局宏來插入css和js引用,但我發現沒有簡單的方法來使用#assign分配一段文本。
不知道你在哪裏卡住了,或者你爲什麼需要塊分配(看起來像'<#local foo> ...#local>'或者'#assign'或'#global'一樣)。首先,根據你想要決定包含哪些CSS或JS?就像,你想要MVC控制器來決定,還是要將它編碼到模板中,還是希望它取決於模板位置,或者......? – ddekany
決定包含不同的JavaScript或CSS取決於模板的用途。例如,我有一個用於顯示報告的模板。沒有任何其他模板需要我用來做這件事的JavaScript的理由。感謝您的迴應。我將調查<#local>。 – pdeline
@ddekany我看不到<#local>會幫助我。它只能用於宏或函數。我沒有在任何情況下。 – pdeline