thymeleaf设置公共头部
统⼀风格
⽹站为了统⼀风格,和便捷的操作,像头部样式⼀般都是⼀样的,但是Thymeleaf是服务端渲染,不是前端可以异步请求,总是粘贴复制头部信息将是灾难性的问题。
公共的部分应该单独的⽂件
就像静态资源⼀样,应该是所有页⾯都访问⼀份,⽽不是每个页⾯都粘贴⼀份。
thymeleaf提供了解决的⽅法thyme
在模板⽂件中,⽐如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");
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论