だから私はthymeleaf page layoutsを使用しています。Thymeleafのページレイアウトのヘッダープロパティがオーバーライド
フラグメントを使用するページの<head></head>
に<title></title>
プロパティを設定するにはどうすればよいですか?現在、ヘッダーのすべてがヘッダーフラグメントによってオーバーライドされています(下記参照)。
これは私です:resources/templates/fragments/header.html
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head th:fragment="header">
<link href="../../static/css/bootstrap.min.css" th:href="@{css/bootstrap.min.css}" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js" th:src="@{js/bootstrap.min.js}"></script>
</head>
<body></body>
</html>
これは私のインデックスページ(Iが表示するタイトルタグをしたい)である:これは、実際のHTML出力である
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<head th:include="fragments/header :: header">
<title>THIS DOES NOT SHOW</title>
</head>
<body>
<div class="container">
<div th:include="fragments/headerNavbar :: headerNavbar"></div>
<h1>hey</h1>
<div class="btn btn-success">button</div>
<button class="btn btn-success">another</button>
</div>
:
<head>
<link href="css/bootstrap.min.css" rel="stylesheet">
<script src="js/bootstrap.min.js"></script>
</head>
私は何が起こっているかを取得します。ヘッダーフラグメントはインデックスページの先頭にロード(インクルード)されているため、すべてのプロパティがオーバーライドされています。
私の問題は、ヘッダ断片をどうやって作成するのか分からず、タイトルのようなプロパティを指定する際にファイルにその断片を使用させることです。
<head>
<div th:include="fragments/header :: header"></div>
<title>THIS DOES NOT SHOW</title>
</head>
しかし、それは本当に私のHTMLを台無しに:
これは私がインデックスファイルにしようとしたものです。簡単な解決策が必要ですか?
おそらく私も聞きたいことでした。 – Prashant
@Prashantそれは奇妙な1つのtbhです!実際には明らかな解決策ではないようです。おそらく、Jqueryでそれを丸める可能性のある方法がありますが、それは厄介です。 – gudthing
はい合意しました!これは、特にthymeleafが自然のテンプレートエンジンであると主張されている場合にのみ、解決策ではなく、解決策ではないと考えられます。私たちがここに何かを見逃しているかどうか本当に知りたいです。 – Prashant