如何仅在 Thymeleaf 片段存在时插入它,否则忽略它

问题描述 投票:0回答:1

我正在尝试将片段注入到我的页面中,但我使用的是通用模板,并且该片段并不总是存在。这就是我现在所处的位置,但无论我尝试什么,我总是会得到 org.thymeleaf.exceptions.TemplateProcessingException

有什么好主意如何解决这个问题吗?

我试过这个:

<script th:insert="${js_assets !=null} ? ~{'fragments/' + ${js_assets} :: ${js_assets} : ~{}" th:inline="javascript">...</script>

还有这个:

<script th:insert="${js_assets !=null} ? ~{'fragments/' + ${js_assets} :: ${js_assets} : _" th:inline="javascript">...</script>

还有很多其他事情,但总是以相同的例外结束

thymeleaf
1个回答
0
投票

解决了,问题不是插入...而是片段...这有效:

<th:block th:if="${js_assets}"> 
    <script th:replace="@{'fragments/' + ${js_assets}} :: ${js_assets}">...</script> 
</th:block>
© www.soinside.com 2019 - 2024. All rights reserved.