web-dev-qa-db-fra.com

Comment ajouter des commentaires de code source dans des modèles Thymeleaf qui ne sont pas inclus dans le code HTML généré?

J'utilise la pile complète Thymeleaf (ressort mvc, sécurité, dialecte de mise en page, webflow) dans une application web de taille moyenne.

Ok .. maintenant que nous mettons tellement de code dans les modèles html, il serait bien d'inclure des commentaires de code source qui ne sont pas inclus dans le fichier HTML généré.

Comment pouvons-nous y parvenir?

38
prashant2402

La version 2.1 est disponible, vous pouvez maintenant mettre à jour vos bibliothèques et utiliser les commentaires dans votre code. Avec cette version, les développeurs peuvent utiliser des blocs de commentaires au niveau de l'analyseur:

<!--/* This code will be removed at thymeleaf parsing time! */-->

et blocs de commentaires uniquement prototypes:

<span>hello!</span>
<!--/*/
    <div th:text="${...}">

</div>
/*/-->
<span>goodbye!</span>

Des explications détaillées peuvent être trouvées dans la documentation officielle ici: http://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#comments-and-blocks

61
Rafal Borowiec

Comme mentionné Rafal Borowiec pour commenter le bloc de code HTML que vous devez utiliser

<!--/*quelque chose à commenter*/--> construction (voir documentation ).

Il est également possible de commenter/supprimer votre code javascript en utilisant thymeleaf avec

/*[- quelque chose à commenter -]*/ construction (voir documentation ). Vous pouvez donc annoter votre code js sans divulguer aucune information

/*[-
 *
 * Some information about function.
 *
 * -]*/
function someFunction() {
    console.log('Hello world');
}
6
ytterrr

Avant la version 2.1, vous pouvez le faire

<th:block th:if="${false}"><!--   ignore me  --></th:block>

C'est très moche (le th:block besoin d'un faux th:if) mais fonctionne.

4
reevesy

Avec Thymeleaf 3.0, la version actuellement opérationnelle était

<!--/*-->
   this comment will be removed by thymeleaf on the template processing
<!--*/-->

D'autres réponses, pour les versions antérieures de thymeleaf, n'ont pas fonctionné par moi. La documentation thymeleaf actuelle est ici .

Ce n'est pas possible dans la version stable actuelle de Thymeleaf. Il est prévu pour la version 2.1 comme mentionné dans Thymeleaf Issue 1

2
michal.kreuzman