如何插入带有可选参数和必需参数的Thymeleaf片段?

时间:2019-12-06 19:11:08

标签: java parameters fragment thymeleaf

我正在尝试使用一个公共片段并将我的Thymeleaf模板模块化,并插入到多个页面模板中。

在我的情况下,这是针对页面控制器(“第一”,“上一个”,“ 1、​​2、3 ...,下一个,最后一个”)的,它们中的每一个都充当指向特定结果页面的链接。因此,始终有必要传递与可用页面有关的信息以及链接将包括的基本URL。

我的片段如下:

<div th:fragment="control(pageControls, pageUrl)"
     th:with="pageReach=${pageReach} ?: 5, withPreviousNext=${withPreviousNext} ?: false">
</div>

它是这样插入的:

<div th:replace="fragments :: control(W, X)"></div>

这对我不起作用,因为据我所知,提供可选参数pageReachwithPreviousNext的唯一方法是让我使用{{1} }标签:

th:replace

因此,我可以利用<div th:replace="fragments :: control(pageControls=W, pageUrl=X, pageReach=Y, withPreviousNext=Z)></div>来提供所有参数,但是我无法使用速记th:with,并且也无法执行control(W, X)W作为必需参数。

是否有一种方法可以将必需参数和可选参数组合成单个片段替换?如果可能的话,我仍然希望能够替换该片段而无需在替换中命名所需的参数。

这些细节使我的问题与本网站上其他人所提出的问题不同。

0 个答案:

没有答案
相关问题