【发布时间】:2021-06-13 19:02:42
【问题描述】:
我正在将静态菜单重写为动态菜单,因为我们的客户想要动态地更改菜单。在此之前,我的 xhtml 中有标准的
结构。但现在我已将其更改为:
<p:menu model="#{pageTemplateView.menuModel}"/>
我正在像这样在我的支持 bean 中创建模型:
DefaultMenuItem menuItem = new DefaultMenuItem();
menuItem.setIcon(item.getIcon());
menuItem.setTarget(item.getLink());
menuItem.setValue(item.getName());
但问题是我不知道如何在 bean 的菜单项中添加 <pe:badge> 组件。
在此之前,我通过以下方式将徽章添加到菜单中:
<p:menuitem id="tasks_icon_menuitem_id" icon="fa fa-tasks" url="#">
<pe:badge content="#{badgeCountBean.badgeCount()}"/>
</p:menuitem>
那么如何将<pe:badge> 添加到 bean 中动态创建的菜单中?
我正在使用 PrimeFaces 8
【问题讨论】:
-
您可以尝试使用
for属性。请注意,徽章在 PFE 10 中已弃用。 -
我也不确定我们是否对 MenuItems 进行了测试?
-
嘿,我尝试过使用
for,但它似乎不起作用。 -
@Melloware 不,它最初只适用于按钮,但我删除了该限制以便能够在头像上使用它。
标签: jsf primefaces primefaces-extensions