我正在使用全栈 Thymeleaf(Spring MVC、Security、Layout Dialect、Webflow)开发一款中等规模的 Web 应用程序。
好吧...现在我们在 HTML 模板中放了那么多代码,包含不会被生成的 HTML 文件中的源代码注释将是个不错的选择。
我们如何实现这一点?
我正在使用全栈 Thymeleaf(Spring MVC、Security、Layout Dialect、Webflow)开发一款中等规模的 Web 应用程序。
好吧...现在我们在 HTML 模板中放了那么多代码,包含不会被生成的 HTML 文件中的源代码注释将是个不错的选择。
我们如何实现这一点?
版本2.1已发布,现在您可以升级您的库并在代码中使用注释。使用此版本,开发人员可以使用解析器级别的注释块:
<!--/* This code will be removed at thymeleaf parsing time! */-->
以及仅为原型的注释块:
<span>hello!</span>
<!--/*/
<div th:text="${...}">
</div>
/*/-->
<span>goodbye!</span>
更详细的说明可以在这里的官方文档中找到:http://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#comments-and-blocks
<!--/*--> 你的多行注释 <!--*/-->
。 - Chris Ociepa如Rafal Borowiec所提到的,在HTML代码中添加注释块应该使用<!--/*
需要注释的内容*/-->
结构(详见文档)。
此外,也可以在thymeleaf中使用/*[-
需要注释的内容-]*/
结构来注释/删除JavaScript代码(详见文档)。因此,您可以对JavaScript代码进行注释而不泄漏任何信息。
/*[-
*
* Some information about function.
*
* -]*/
function someFunction() {
console.log('Hello world');
}
th:inline="javascript"
放置在脚本标签中,如下所示:<script type="text/javascript" th:inline="javascript">
,否则它将无法正常工作。 - michal.jakubeczy使用Thymeleaf 3.0,当前的工作版本是
<!--/*-->
this comment will be removed by thymeleaf on the template processing
<!--*/-->
对于较早版本的thymeleaf,其他答案对我没有用。当前的thymeleaf文档在这里。
<th:block th:if="${false}"><!-- ignore me --></th:block>
这很丑(th:block
需要一个错误的th:if
),但可以工作。