thymeleaf设置公共头部

统一风格

网站为了统一风格,和便捷的操作,像头部样式一般都是一样的,但是Thymeleaf是服务端渲染,不是前端可以异步请求,总是粘贴复制头部信息将是灾难性的问题。

公共的部分应该单独的文件

就像静态资源一样,应该是所有页面都访问一份,而不是每个页面都粘贴一份。

thymeleaf提供了解决的方法

在模板文件中,比如head.html,使用

<div th:fragment="topHeader">
...
</div>

需要引入的文件中,比如首页

<div th:insert="head::topHeader"></div>

就是这么简单,但是遇到的坑还是蛮多的。

  1. 第一次首先最好复制粘贴,不要手写。
    因为<div th:fragment="topHeader">中的"topHeader"双引号,手写的时候自动生成了汉字的符号,改了小半天。没有正确的对照,发现问题比较费时间。
  2. 这里的引用不会走请求,所以不需要编写controller,也不需要配置拦截器。之前还以为是Shiro拦截请求的问题。
  3. 原来的文件中的css文件样式都没有了,需要在新的页面上导入css文件。
  4. 引入css样式的方法
<link rel="stylesheet" type="text/css" href="headstyle.css" />

但是css文件会被拦截,放行

        filterMap.put("/css/**","anon");
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值