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

十、属性优先级

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

十、属性优先级

当您在同一个标记中写入多个th:*属性时会发生什么情况?例如:

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

我们希望th:each属性在th:text之前执行,以便获得所需的结果,但是考虑到 HTML/XML 标准没有给标记中的属性写入 Sequences 赋予任何含义,必须在属性本身中构建一个* precedence *机制,以确保它可以按预期工作。

因此,所有 Thymeleaf 属性都定义了数字优先级,从而确定了它们在标签中执行的 Sequences。该命令是:

Order Feature Attributes
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>
赞(0) 打赏
版权归原创作者所有,任何形式转载请联系我们:大白菜博客 » 十、属性优先级

评论 抢沙发

2 + 7 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

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

支付宝扫一扫打赏

微信扫一扫打赏