17.3 th:ref属性

th:ref只是一个标记属性,它从处理的角度来说什么都不做,处理完成后会直接消失。它的作用在于标记参考,比如,它可以像一个标签名或是片段名(th:fragment)一样被markup选择器选中。

所以如果我们有这样的一个选择器:

  <attr sel="whatever" .../>

它会匹配:

  • 一切<whatever>标签
  • 一切含有th:fragment="whatever"属性的标签
  • 一切含有th:ref="whatever"属性的标签

相对于纯HTML的id属性,th:ref的优点是什么呢?就是我们不想再标签上添加额外的idclass属性作为逻辑锚点,从而影响输出结果。

那么同样的,th:ref的缺点是什么?显然我们将一些Thymeleaf逻辑(“logic”)添加到了模板中。

注意th:ref不仅适用于逻辑解耦模板,它在其它场景中也适用,比如片段表达式(~{...})。

results matching ""

    No results matching ""