Thymeleaf th:insert、th:replace、th:include的使用

news2024/11/23 7:25:24

参考资料

  1. 八、模板布局(Template Layout)
  2. Thymeleaf中th:include、th:replace、th:insert、th:fragment用法及区别
  3. Thymeleaf参考手册(八):模板布局

目录

  • 一. 前期准备
  • 二. th:insert
  • 三. th:include
  • 四. th:replace


一. 前期准备

⏹子页面 test14-sub.html

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <style>
        .children {
            width: 500px;
            height: 500px;
            background-color: pink;
        }
    </style>
</head>
<body>
    <div class="children">
        <div th:id="${id}">[[${name}]]</div>
        <h1>我是子页面中的内容</h1>
        <hr>

        <div th:fragment="footer">
            我是子页面中footer片段的内容
        </div>
    </div>
</body>
<script>
    window.addEventListener("load", () => {
        console.log("子页面的内容加载了!");
    })
</script>
</html>

⏹父页面

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <style>
        .parent {
            width: 500px;
            height: 100px;
            background-color: yellow;
        }
    </style>
    <title>test</title>
</head>
<body>
    <div class="parent">
        我是父页面中的内容
    </div>
    <hr>

    <div class="parent-area">
        <!-- 👉👉👉在此处引入子页面👈👈👈 -->
    </div>
</body>
</html>

二. th:insert

引入子模块的所有,保留自己的主标签
当引入子页面的片段的时候,会保留 th:fragment片段的主标签

  • :: html表示引入整个子页面,包括子页面中的jscss
<div id="import-content" th:insert="./test14-sub :: html(id='110', name='贾飞天')"></div>

🤔效果

在这里插入图片描述

  • 引入片段
<div id="import-content" th:insert="./test14-sub :: footer"></div>

🤔效果
可以看到th:fragment片段的主标签div依旧存在

在这里插入图片描述


三. th:include

🤪 Thymeleaf 3.0之后不推荐使用

引入子模块的所有,保留自己的主标签
当引入子页面的片段的时候,不会保留 th:fragment片段的主标签

  • 引入整个html
<div id="import-content" th:include="./test14-sub :: html(id='110', name='贾飞天')"></div>

🤔效果

在这里插入图片描述

  • 引入片段
<div id="import-content" th:include="./test14-sub :: footer"></div>

🤔效果
可以看到th:fragment片段的主标签已经不存在了,这一点是 th:includeth:insert 最大的区别

在这里插入图片描述


四. th:replace

引入子模块的所有,不保留父模块的tag。
替换当前标签为模板中的标签,加载的节点会整个替换掉加载他的div等元素标签

  • 引入整个html
<div id="import-content" th:replace="./test14-sub :: html(id='110', name='贾飞天')"></div>

🤔效果

在这里插入图片描述

  • 引入片段
<div id="import-content" th:replace="./test14-sub :: footer"></div>

🤔效果

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/21170.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【云原生-Docker】常用的 Docker Compose 配置项

&#x1f341;博客主页&#xff1a;&#x1f449;不会压弯的小飞侠 ✨欢迎关注&#xff1a;&#x1f449;点赞&#x1f44d;收藏⭐留言✒ ✨系列专栏&#xff1a;&#x1f449;Docker学习专栏 ✨学习社区&#xff1a;&#x1f449;不会压弯的小飞侠 ✨知足上进&#xff0c;不负…

Animation Rigging 如何让你的Avatar人物更具灵活性

文章目录&#x1f388; 简介&#x1f388; 基本组件&#x1f388; 应用Aim ConstraintTwo Bone IK Constraint&#x1f388; 简介 Animation Rigging是Unity官方发布的可以对Avatar人物骨骼进行约束的工具&#xff0c;已经有稳定的经过验证的Vertified包体&#xff0c;可以将其…

认知无线电网络的服务质量——蜻蜓算法的应用(Matlab代码实现)

&#x1f352;&#x1f352;&#x1f352;欢迎关注&#x1f308;&#x1f308;&#x1f308; &#x1f4dd;个人主页&#xff1a;我爱Matlab &#x1f44d;点赞➕评论➕收藏 养成习惯&#xff08;一键三连&#xff09;&#x1f33b;&#x1f33b;&#x1f33b; &#x1f34c;希…

【深入浅出Spring6】第七期——使用JDBC模板与代理模式

一、JDBCTemplate JdbcTemplate 是Spring提供的一个JDBC模板类&#xff0c;是对JDBC的封装&#xff0c;简化JDBC代码Spring也继承了其他持久化的框架&#xff0c;比如 MyBatis 等本篇我们从简单的增删改查角度介绍如何使用Spring提供的这个模板类 $ 准备工作 创建一个新的模块…

livekit 简单上手教程

什么是livekit&#xff1f; livekit是一个开源的webrtc项目&#xff0c;基于pion实现了SFU架构的go程序。 它主要有以下几个特性&#xff1a; 可以水平扩展的sfu架构。有完整的sdk程序接口供开发人员使用。基于JWT进行身份验证&#xff0c;可与大部分系统进行权限集成。内置Tur…

SpringCloud学习笔记 - 分布式配置中心 - config

1. 简介 Spring Cloud Config是用来为分布式系统中的基础设施和微服务应用提供集中化的外部配置支持的。 它由服务端和客户端构成&#xff1a; 其中&#xff0c;服务端也称为分布式配置中心&#xff0c;是一个独立的微服务应用&#xff0c;用来连接配置仓库、为客户端提供支持…

32.nacos配置文件中心,使用实例(springcloud)

1.为什么使用Nacos 配置文件中心1.如果在生产情况下&#xff0c;修改了配置文件&#xff0c;项目需要下架&#xff0c;重新打包&#xff0c;重新发布。这在单机模式下影响不会太大&#xff0c;但如果过在一个集群项目中就会照成很大的影响&#xff0c;需要停掉多个项目。因此&a…

字节研发之道

前言 字节的迅速崛起缔造了一个互联网的神话&#xff0c;堪称火箭般的蹿升。当阿里来到第十八个年头时&#xff0c;员工人数还不足6万。老牌互联网腾讯现在也不过11万左右人数。但字节发展到七个年头时&#xff0c;人数就突破了10万。曾经入职阿里是一票难求&#xff0c;但现在…

基于51单片机的音乐盒播放器proteus仿真

资料编号&#xff1a;092 下面是相关功能视频演示&#xff1a; 92-基于51单片机的音乐盒播放器proteus仿真&#xff08;源码仿真全套资料&#xff09;功能介绍&#xff1a;使用51单片机&#xff0c;采用蜂鸣器进行音乐播放&#xff0c;提供了音乐代码生成器软件&#xff0c;可…

JavaWeb运行环境安装教程以及各个安装包

文章目录安装包下载安装教程一、JDK安装1、下载2、安装3、配置环境4、验证环境配置二、IDEA安装下载链接三、MySQL安装1、下载2、安装四、Navicat安装五、Tomcat安装1、下载2、环境配置3、修改编码4、启动六、Maven安装1、下载2、环境配置3、新建本地仓库4、修改镜像5、添加IDE…

Design Compiler工具学习笔记(1)

本人做过FPGA设计的项目&#xff0c;后面想转 IC 设计方向。现在从 DC 工具的使用开始学起&#xff0c;DC 是新思科技的EDA软件&#xff0c;具体的安装见下面的文章&#xff1a; Synopsys EDA Tools 安装问题记录https://blog.csdn.net/qq_43045275/article/details/127630241…

5G无线技术基础自学系列 | CloudRAN架构

素材来源&#xff1a;《5G无线网络规划与优化》 一边学习一边整理内容&#xff0c;并与大家分享&#xff0c;侵权即删&#xff0c;谢谢支持&#xff01; 附上汇总贴&#xff1a;5G无线技术基础自学系列 | 汇总_COCOgsta的博客-CSDN博客 5G在核心网实现云化之后&#xff0c;更…

2.旋转的骰子(1)

1.动画——旋转的骰子 我们想用纯html 和CSS, 做一个旋转的筛子,骰子要有立体感,每个面上要有圆点,表示点数,并且骰子可以原地旋转。 2.分析需求——庖丁解牛

【DELM回归预测】基于matlab多元宇宙优化算法改进深度学习极限学习机数据回归预测【含Matlab源码 2230期】

⛄一、多元宇宙优化算法 MVO是Seyedali Mirjalili受到多元宇宙理论的启发提出来的元启发式优化算法。主要根据多元宇宙理论的3个主要概念-白洞、黑洞和虫洞&#xff0c;来建立数学模型。 MVO算法中的可行解对应宇宙&#xff0c;解的适应度对应该宇宙的膨胀率&#xff0c;在每…

【第三部分 | 移动端开发】2:流式布局

目录 | 移动端布局 | 流式布局&#xff08;百分比布局&#xff09; | 案例&#xff1a;京东搜索页相关知识点 | 移动端布局 | 流式布局&#xff08;百分比布局&#xff09; 介绍 核心思想&#xff1a;不使用固定布局&#xff0c;而是使用百分比 为了保护盒子的内容不因拉伸…

Spring AOP使用与原理

AOP介绍 SpringAOP核心概念 上述中已经出现的关键词有Advice(顶级的通知类/拦截器)、MethodInvocation(方法连接点)、MethodInterceptor(方法拦截器) SpringAOP在此基础上又增加了几个类&#xff0c;丰富了AOP定义及使用概念&#xff0c;包括 Advisor&#xff1a;包含通知(拦截…

基于密度的划分、DBSCAN(机器学习)

目录 居于密度的划分 DBSCAN算法 居于密度的划分 基于划分聚类和基于层次聚类的方法在聚类过程中根据距离来划分类簇&#xff0c;因此只能够用于挖掘球状簇。 为了解决这一缺陷&#xff0c;基于密度聚类算法利用密度思想&#xff0c;将样本中的高密度区域(即样本点分布稠密的…

图的概念(1)

图是什么&#xff1f; 首先&#xff0c;我们导入需要的包&#xff1f; import numpy as np import random import networkx as nx from IPython.display import Image import matplotlib.pyplot as plt 图的定义&#xff1f; 图表示物件与物件之间关系的数学对象&#xff0c;…

Metasploit入门用法

靶机介绍 Difficult&#xff1a; As always, it’s a very easy box for beginners. Goal&#xff1a; Get flag Download&#xff1a;https://www.vulnhub.com/entry/funbox-scriptkiddie,725/ 解题过程&#xff1a; 1.使用nmap进行端口扫描:Nmap -sV IP 2.使用search命令查…

yolov5加入分割头,多任务头

Yolov5同时进行目标检测和分割分割_MidasKing的博客-CSDN博客_yolov5分割 用YOLOv5ds训练自己的数据集,注意点!_用猪头过日子.的博客-CSDN博客 基于pytorch用yolov5算法实现目标检测与分割_无损检测小白白的博客-CSDN博客 原理 代码: