thymeleaf的不同用法

一、获取项目路径contextPath
将下面代码写到共用的html中
 

let context = [[@{/}]]
//这种方法Javascript汇报错,导致了在idea中,
//只要在{后面回车,就会自动增加一个}所以可以采用下一个方法
 /*<![CDATA[*/
   context = /*[[@{/}]]*/ '';
 /*]]>*/
 //这样不会报错,也能正常使用

二、创建共用HTML,可以将HTML中任意模块引入到你想要引入的页面
这个需要用到两个thymeleaf的命令
th:fragmentth:replace

th:fragment 是给你HTML中的某个区域加上一个标识

th:replace 就是将th:fragment定义的内容引入到别的html中

如下代码:

<div th:fragment="hello">
    hello world
</div>
<div th:replace="common :: hello">
</div>

 th:replace 有两个参数,第一个common,就是你公共文件的名字,如果前面有路径就加上路径,建议就放在根目录下。第二个参数hello,就是common中你要引用的区域。

同时第二个参数后面,又可以加上单独的参数,可以用于特殊的动态引用。

如下代码:

<div th:fragment="hello(opt)">
    <div th:text="${opt}"></div>
</div>
<div th:replace="common :: hello('china')">
</div>

如果两边参数没有对应上的话,就会直接报错。然后也可以和vue配合,动态显示你想要的东西。

三、可以和其他标签的属性搭配

th:xxx 是thymeleaf的用法,这不仅可以使用themeleaf原来的属性,还可以和其他标签搭配使用。这样,其他标签也得到了thymeleaf的能力。

比如一个a标签的href属性,如果单独使用的话,是没有办法使用th的能力的。但是在前面加上th:href就可以获得th的能力,可以使用[[@{/}]]获得项目路径。

不仅仅可以和原生的html属性搭配,还可以和vue的属性搭配。

比如上面的动态参数,如果想要动态显示隐藏的话,vue中是没有办法直接拿到参数opt的。并且使用th:style也是不生效的(我也不知道为什么),但是和vue中的v-show搭配就可以实现。

这就需要和v-show搭配,比如:th:v-show="${opt}=='china'?true:false"这样就可以显示隐藏不同的内容了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值