您的位置:首頁/技術文章
文章詳情頁

java - freemarker如何實現這種賊簡單的效果

瀏覽:114日期:2023-11-17 16:33:30

問題描述

模板

<!DOCTYPE html><html><head><#include 'baseHeader.html' /><#macro head ><#nested></#macro><#macro style ><#nested></#macro></head><body><#macro content > <#nested></#macro></body><#macro script > <#nested></#macro></html>

頁面調用

<#include '/layout/master.ftl' /><@script>var a=1;</@script>

結果生成的頁面,這句var a=1;跑到了</html>后面,也就是模板的最后面,并沒有出現在模板對應的位置。

本人搞了幾年.net,感覺這種模板要出我的效果應該是理所當然的。但是在java上,貌似要實現我預料中的效果,不容易?

問題解答

回答1:

freemarker不是基于layout的,它只是做表達式求值和文本替換,是不能滿足你的要求的。

據我所知:

Struts配合Tiles插件可以達到你要的layout效果。

Thymeleaf配合thymeleaf-layout-dialect也可以達到你要的效果。

回答2:

宏的用法不對,可以參考下面

<!-- 定義宏用 <#macro macroName parameterList> --><#macro list title items> <p>${title?cap_first}: <ul><#list items as item><li>${item}</#list> </ul></#macro><!-- 調用宏用 <@macroName arguments> --><@list items=animals/>

標簽: java
相關文章:
国产综合久久一区二区三区