我已经创建了一个名为"fragments.html"的文件。它包含以下片段:
<div th:fragment="my_fragment(content)">
<p th:text="${content}"></p>
</div>
我把上面的片段放到了我的视图文件中:
<div th:replace="fragments :: my_fragment('test')"></div>
现在,我想向my_fragment传递两个参数,但我必须确保向后兼容。
我尝试按照以下方式解决问题:
<div th:fragment="my_fragment(content, defaultParameter='default value')">
<p th:text="${content}"></p>
</div>
不幸的是,上述解决方案出现了错误:
org.springframework.web.util.NestedServletException: 请求处理失败;嵌套异常为 org.thymeleaf.exceptions.TemplateProcessingException: 无法解析片段。签名“my_fragment(content,defaultParameter ='default value')”声明了2个参数,但片段选择只指定了1个参数。 片段选择不正确匹配。
有任何想法吗?
<p th:text="${defaultParameter}"></p>
设置默认值,以便在未输入参数时不会为空? - perak${}
中,例如<th:block th:replace="common::buttons(fooBar = ${bar})" />
。 - PunchyRascal