- th:fragment
fragment的引用
th:insert:保留自己的主标签,保留th:fragment的主标签。
th:replace:不要自己的主标签,保留th:fragment的主标签。
th:include:保留自己的主标签,不要th:fragment的主标签。(官方3.0后不推荐) - 字面值
<p th:text="文字/数字/简单计算表达式/boolean/null"></p>
- 文本操作
- 字符串连接
<p th:text="'Welcome to ' + ${location} + '!'"></p>
- 字面值替换
符号||可以用来将字面值和表达式包裹起来,这样就能方便的替换变量的值,而不需要使用+连接符:
<p th:text="|Welcome to ${location}!|"></p>
- 算术运算
- 字符串连接
<!-- 0 -->
<p th:text="4 % 2"></p>
<!-- 2 -->
<p th:text="${pagination.page + 1}"></p>
- 布尔运算
- 比较和相等
- 条件运算
三元运算符:(if) ? (then) : (else)
二元运算符:(value) ?: (defaultValue)。
value非空(null)即真,条件为真时输出value,否则输出defaultValue。
- 无操作符
当模板运行在服务器端时,Thymeleaf 会解析th:*属性的具体值替换标签体的内容。无操作符(_)则允许你使用原型标签体的内容作为默认值:
< !-- 你还没有登录,请先登录 -->
< p th:text=“${token} ?: _”>你还没有登录,请先登录
内联表达式
- [[…]]
[[]]相当于th:text,对含有 HTML 标签的内容自动进行字符转义。
< p>The message is : [[${htmlContent}]]< /p>
- [(…)]
[()]相当于th:utext,对含有 HTML 标签的内容不进行字符转义。 - th:inline
值 | 描述 |
---|---|
none | 禁止内联表达式,可以原样输出 [[]] 和 [()] 字符串 |
text | 文本内联,可以使用 th:each 等高级语法 |
css | 样式内联,如:< style th:inline=“css”> |
javascript | 脚本内联,如:< style th:inline=“javascript”> |