recherche

Maison  >  Questions et réponses  >  le corps du texte

java - Comment Freemarker obtient-il cet effet simple?

Modèle

<!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>

Appel de page

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

Dans la page générée ainsi, les mots derrière ceci var a=1;跑到了</html>, c'est-à-dire à la fin du modèle, n'apparaissent pas à la position correspondante du modèle.

Je fais ça depuis plusieurs années.net,感觉这种模板要出我的效果应该是理所当然的。
但是在java, et il semble que ce ne soit pas facile d'obtenir les résultats que j'attendais ?

我想大声告诉你我想大声告诉你2766 Il y a quelques jours645

répondre à tous(2)je répondrai

  • 阿神

    阿神2017-05-27 17:43:00

    freemarker n'est pas basé sur la mise en page. Il effectue uniquement l'évaluation des expressions et le remplacement du texte, ce qui ne peut pas répondre à vos exigences.

    A ma connaissance :

    1. Le plug-in Struts and Tiles peut obtenir l'effet de mise en page souhaité.

    2. Thymeleaf combiné avec thymeleaf-layout-dialect peut également obtenir l'effet souhaité.

    répondre
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-27 17:43:00

    L'utilisation des macros est incorrecte, veuillez vous référer à ce qui suit

    <!-- 定义宏用 <#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 title="animals"/>

    répondre
    0
  • Annulerrépondre