thymeleaf传值的bug【th:replace】和【th:fragment】
这个bug调了一段时间,一直怀疑是自己写错了,后来才知道是th:replace在传值的时候,只在第一个传递,后面的th:replace不能传递值。代码大概是这样的<div th:replace="commons/bar :: topbar"></div><div th:include="commons/bar :: sidebar(active='emps')">
·
这个bug调了一段时间,一直怀疑是自己写错了,后来才知道是th:replace在传值的时候,只在第一个传递,后面的th:replace不能传递值。
代码大概是这样的
<div th:replace="commons/bar :: topbar"></div>
<div th:replace="commons/bar :: sidebar(active='emps')"></div>
结果后端怎么都拿不到这个active,更别提还需要这个值进行判断,我就尝试了各种办法,完全不晓得哪里出错了,后来尝试给第一个replace赋一个值看看是否也是这样,惊奇的发现第一个竟然能够获得
是这样的
<div th:replace="commons/bar :: topbar(x='123')"></div>
<div th:replace="commons/bar :: sidebar(active='emps')"></div>
然后x的值明明白白的显示在屏幕上,我心里很多问号,我以为是thymeleaf有bug什么的,再经过几次尝试发现只有在代码中第一个replace处才可以传递值,在后面都没有效果,所以正确的代码是
<div th:replace="commons/bar :: topbar(active='emps')"></div>
<div th:replace="commons/bar :: sidebar"></div>
成功!兴奋和吐血的感觉。
更多推荐

所有评论(0)