Thymeleaf 模板布局和属性优先级

栏目: Html · 发布时间: 5年前

内容简介:举个栗子用上面三种方式引用下面这段:引用:

Java

Thymeleaf 模板布局和属性优先级

th:insert,th:replace,th:include三者的区别

  • th:insert 它将简单地插入指定的片段作为正文的标签
  • th:replace 用指定实际片段来替换其主标签
  • th:include 类似于 th:insert ,但不是插入片段它只插入此片段的内容(3.x版本后,不再推荐使用)

举个栗子用上面三种方式引用下面这段:

<footer th:fragment="copy">
  © 2019 https://blog.eunji.cn	"爱敲代码的猫"
</footer>

引用:

<body>

  ...

  <div th:insert="footer :: copy"></div>

  <div th:replace="footer :: copy"></div>

  <div th:include="footer :: copy"></div>
  
</body>

最终会是下面这种效果:

<body>

  ...

  <div>
    <footer>
      © 2019 https://blog.eunji.cn	"爱敲代码的猫"
    </footer>
  </div>

  <footer>
    © 2019 https://blog.eunji.cn	"爱敲代码的猫"
  </footer>

  <div>
    © 2019 https://blog.eunji.cn	"爱敲代码的猫"
  </div>
  
</body>

属性优先级

th:* 在同一个标签中写入多个属性会发生什么?例如:

<ul>
  <li th:each="item : ${items}" th:text="${item.description}">Item description here..</li>
</ul>

我们希望该 th:each 属性在之前执行, th:text 以便我们得到我们想要的结果,但是考虑到 HTML / XML 标准没有给标记中的属性写入的顺序赋予任何意义, 优先级 必须在属性本身中建立机制,以确保它将按预期工作。

因此,所有 Thymeleaf 属性都定义了一个数字优先级,它确定了它们在标记中执行的顺序。这个顺序是:

顺序 功能 属性
1 片段包含 th:insert th:replace
2 片段的迭代 th:each
3 条件判断 th:if th:unless **th:switch ** th:case
4 局部变量的定义 th:object th:with
5 通用属性修改 th:attr th:attrprepend th:attrappend
6 特定属性修改 th:value th:href th:src ...
7 文本(标签主体修改) th:text th:utext
8 片段规范 th:fragment
9 片段删除 th:remove

这个优先级机制意味着如果属性位置被反转,上面的迭代片段将给出完全相同的结果(虽然它的可读性稍差):

<ul>
  <li th:text="${item.description}" th:each="item : ${items}">Item description here..</li>
</ul>

本文由Aquan 创作,采用 知识共享署名4.0 国际许可协议进行许可

本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名

最后编辑时间为: 三月 8,2019


以上所述就是小编给大家介绍的《Thymeleaf 模板布局和属性优先级》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

设计之下

设计之下

搜狐新闻客户端UED团队 / 电子工业出版社 / 2014-1-1 / CNY 69.00

形而上者谓之道,形而下者谓之器。匠者,器也。处身平凡的匠人不断追求向上的设计之道。本书没有华丽的辞藻和长篇大论的理论,作者是搜狐一线的设计团队,写作过程中他们尽力还原真实的工作场景,并总结出了一些实用的经验和方法。 《设计之下》共三部分,全面讲解了用户体验设计的流程和方法。第一部分为“交互设计”,阐述了从项目启动、解析需求到原型设计的过程,并且总结了交互设计的要点:大局观、操作流程简捷、形式......一起来看看 《设计之下》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

随机密码生成器
随机密码生成器

多种字符组合密码

html转js在线工具
html转js在线工具

html转js在线工具