Thymeleaf取得context path(專案路徑)的方法如下。
在template html標籤的th:*
屬性使用@{/}
。
<a th:href="@{/}">context root</a>
在template的<script>
使用行內表示式[[@{/}]]
取得。
<script th:inline="javascript">// enable JavaScript inlining
const contextPath = /*[[@{/}]]*/''
console.log(contextPath)
</script>
相當於JSP用EL ${pageContext.request.contextPath}
取得context path。
可以把上面的敘述放在共用的<head>...</head>
模板片段並include或insert到其他的模板,這樣每個模板的JavaScript即可取contextPath
的值。
head.html
<head xmlns:th="http://www.thymeleaf.org">
<!-- common settings like <meta>, <link> to css, <script> to js library -->
<script th:inline="javascript">
const contextPath = /*[[@{/}]]*/''
</script>
</head>
main.html
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<th:block th:insert="~{/../head}"></th:block><!-- insert head.html fragment -->
<script inline="javascript">
console.log(contextPath) // contextPath is from head.html
</script>
<body>
...
</body>
</html>
沒有留言:
張貼留言