gpt4 book ai didi

templates - 将属性动态插入 JSF2/Primefaces 模板?

转载 作者:行者123 更新时间:2023-12-04 05:26:25 32 4
gpt4 key购买 nike

我正在创建一个简单的 Web 应用程序来试用带有 PrimeFaces 的 JSF2,到目前为止,它的开箱即用功能给它留下了深刻的印象。通过各种教程和文章,我对模板中的属性以及是否可以插入这些属性有疑问。

我知道我可以在模板中插入 HTML 内容块,例如:

<title>
<ui:insert name="title">Default Title</ui:insert>
</title>

但在某些情况下,在属性级别插入会很有用。我想到的具体一个是 TabMenu,如果您使用 TabMenu 进行导航(并且您希望在每个页面上都使用相同的 TabMenu,因此使用模板是有意义的),您会希望根据不同的情况设置不同的“activeIndex”你在看哪个页面。然而,这似乎不适用于模板文件:
<p:tabMenu <ui:insert name="activeIndex">activeIndex="0"</ui:insert>>
<p:menuitem value="Overview" outcome="main" icon="ui-icon-star"/>
<p:menuitem value="Demos" outcome="demos" icon="ui-icon-search" />
<p:menuitem value="Documentation" outcome="docs" icon="ui-icon-document"/>
</p:tabMenu>

希望这是有道理的。有没有办法做到这一点,或者这个设计完全错误并且有更好的方法来做到这一点?

最佳答案

将其传递为 <ui:param> .

例如在模板客户端中:

<ui:composition template="/WEB-INF/templates/some.xhtml">
<ui:param name="activeIndex" value="0" />

...
</ui:composition>

并在主模板中:
<p:tabMenu activeIndex="#{activeIndex}">

关于templates - 将属性动态插入 JSF2/Primefaces 模板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13165394/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com