我有这样的菜单:
item1
- item1.1
- item 1.1.1
- item 1.1.2
- item 1.1.3
- item1.2
- item 1.2.1
- item 1.2.2
item2
- item2.1
- item2.2
我设置`setOnlyActiveBranch(true); 如果我选择item.1.1.1或item.1.1,我会得到这个:
item1
- item1.1
- item 1.1.1
- item 1.1.2
- item 1.1.3
同时如果我按下item1,我就得到了这个:
item1
- item1.1
- item1.2
如果当前节点处于活动状态,我不想隐藏其他根节点。 那么如何以这种方式显示菜单(例如我选择item1.1)?:
item1
- item1.1
- item 1.1.1
- item 1.1.2
- item 1.1.3
- item1.2
item2
是否可以通过标准方法或者我应该创建新助手?
答案 0 :(得分:0)
{get | set} RenderParents()获取/设置一个标志,指定在仅呈现容器的活动分支时是否应呈现父项。如果设置为FALSE,则仅渲染最深的活动菜单。
答案 1 :(得分:0)
使用导航视图助手的标准方法是不可能的,这是不幸的,因为这是一种常见的情况。
然而,ZF开发人员应该考虑一些案例问题,这可能就是为什么它没有实现。 如果您想要将非活动分支显示到第二级,则会出现这种情况。
Item 1 - active
Item 1.1 - active
Item 1.1.1 - active
Item 1.1.2
Item 1.2
Item 2
Item 2.1
Item 2.2
您可能还希望有其他案例,仅显示主要项目,仅显示活动分支。
Item 1 - active
Item 1.1 - active
Item 1.1.1 - active
Item 1.1.2
Item 2
我解决了渲染整个菜单并用CSS隐藏非活动分支的问题。
但您可能希望限制标记,因此您必须制作自定义渲染器。