[thymeleaf] 教程

2019-12-18  本文已影响0人  AustinPup

1 定义

thymeleaf 是一个模板引擎,能够处理html、xml、js。

2 处理类型

html、xml、text、js、css、raw

2.1 Dialects(这里理解为自定义的表达式)

Thymeleaf是一个非常可扩展的模板引擎(实际上它可以被称为模板引擎框架),它允许您定义和定制模板的处理方式,使其达到一个很好的细节级别。
就是thymeleaf自定义的一些属性;

3 Text使用

3.1 支持多语言

代码如下:

<!DOCTYPE html>

<html xmlns:th="http://www.thymeleaf.org">

  <head>
    <title>Good Thymes Virtual Grocery</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="stylesheet" type="text/css" media="all" 
          href="../../css/gtvg.css" th:href="@{/css/gtvg.css}" />
  </head>

  <body>
  
    <p th:text="#{home.welcome}">Welcome to our grocery store!</p>
  
  </body>

</html>

浏览器会忽略它不了解的属性,例如 th:text, 这里既可以写 th:text,也可以写data-th-text, data-是HTML5规范允许使用的自定义属性。

th:text 外部化文本

Thymeleaf 使用#{...} 语法来制定文本,该用法相当于一个常量或者i18n文本吧。

<p th:text="#{home.welcome}">Welcome to our grocery store!</p>

外部化文本的存放位置缺省实现是Resolverorg.thymeleaf.messageresolver.StandardMessageResolver。标准消息解析器的位置在
/WEB-INF/templates/home.html中,如果想i18n的话,写法如下:

此外,外部化文本也可以自定义,取决于org.thymeleaf.messageresolver.IMessageResolver所使用的特定实现。

语境 Contexts

Thymeleaf 的语境信息的存放地,Thymeleaf核心库提供了以下每个接口的实现:

上一篇下一篇

猜你喜欢

热点阅读