欢迎您的访问
专注于分享最有价值的互联网技术干货

十一、注释和块

几个T的资料等你来白嫖
双倍快乐
一定要收藏这个宝藏网站防止丢失,求助资源~!!!

十一、注释和块

11.1. 标准 HTML/XMLComments

标准的 HTML/XMLComments<!-- ... -->可以在 Thymeleaf 模板中的任何位置使用。这些 Comments 中的所有内容都不会被 Thymeleaf 处理,并将逐字复制到结果中:

<!-- User info follows -->
<div th:text="${...}">
  ...
</div>

11.2. Thymeleaf 解析器级 Comments 块

解析器级 Comments 块是将在 Thymeleaf 解析时从模板中简单删除的代码。他们看起来像这样:

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

Thymeleaf 将删除<!--/**/-->之间的所有内容,因此,当模板静态打开时,这些 Comments 块也可用于显示代码,因为知道 Thymeleaf 处理模板时会将其删除:

<!--/*--> 
  <div>
     you can see me only before Thymeleaf processes me!
  </div>
<!--*/-->

对于具有很多<tr>的表进行原型制作,这可能非常方便,例如:

<table>
   <tr th:each="x : ${xs}">
     ...
   </tr>
   <!--/*-->
   <tr>
     ...
   </tr>
   <tr>
     ...
   </tr>
   <!--*/-->
</table>

11.3. Thymeleaf 仅原型 Comments 块

Thymeleaf 允许定义特殊 Comments 块的定义,当模板以静态方式打开(即作为原型)时,标记为 Comments,但 Thymeleaf 在执行模板时将其视为普通标记。

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

Thymeleaf 的解析系统将仅删除<!--/*//*/-->标记,但不会删除其内容,因此不会对其进行 Comments。因此,在执行模板时,Thymeleaf 实际上会看到以下内容:

<span>hello!</span>

  <div th:text="${...}">
    ...
  </div>

<span>goodbye!</span>

与解析器级 Comments 块一样,此功能与方言无关。

11.4. 合成 th:block 标签

Thymeleaf 的标准方言中唯一的元素处理器(不是属性)是th:block

th:block是一个纯属性容器,允许模板开发人员指定他们想要的任何属性。 Thymeleaf 将执行这些属性,然后简单地使该块(而不是其内容)消失。

因此,例如在创建每个表需要多个<tr>的迭代表时,它可能会很有用:

<table>
  <th:block th:each="user : ${users}">
    <tr>
        <td th:text="${user.login}">...</td>
        <td th:text="${user.name}">...</td>
    </tr>
    <tr>
        <td colspan="2" th:text="${user.address}">...</td>
    </tr>
  </th:block>
</table>

与仅原型 Comments 块结合使用时特别有用:

<table>
    <!--/*/ <th:block th:each="user : ${users}"> /*/-->
    <tr>
        <td th:text="${user.login}">...</td>
        <td th:text="${user.name}">...</td>
    </tr>
    <tr>
        <td colspan="2" th:text="${user.address}">...</td>
    </tr>
    <!--/*/ </th:block> /*/-->
</table>

请注意,此解决方案如何使模板成为有效的 HTML(无需在<table>内添加禁止的<div>块),并且当在浏览器中作为原型静态打开时仍然可以正常使用!

赞(0) 打赏
版权归原创作者所有,任何形式转载请联系我们:大白菜博客 » 十一、注释和块

评论 抢沙发

1 + 9 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏