我有一个问题,我找不到优雅的解决方案。我想使用NestedTree
(或类似的东西)作为我的页面的简单菜单。每个节点链接到一个Page
,显示由ID标识的内容。为了获得漂亮的网址和简单的书签,我想使用BookmarkablePageLinks
链接到这些页面。使用BookmarkablePageLink时保留NestedTree的状态(折叠/展开节点)
但是这样做会每次创建一个全新的Page
,从而破坏并重新创建树,重置它的状态。因此,每个链接点击完整的树会崩溃,用户必须再次打开才能选择另一个链接。 我无法找到一个解决方案,满足这些条件:
- 每个标签/窗口保留一个独立的国家
- 从它从打开的标签中打开新标签副本的状态,但随后独立
- 易于使用,这意味着你没有手动设置,并为每个链接
如果当书签网址被称为没有恢复状态它会好起来的恢复状态。
对于Wicket 1.4,我能够使用pageMapName
在会话中维护PageMaps
及其菜单状态的映射。但是Wicket 1.5的功能发生了很大的变化(我现在使用6.8)。
我会很感激解决方案或提示如何做到这一点。
这就是我最初所做的。然后我切换到在会话中存储状态。但是当我打开两个选项卡时,这意味着麻烦:树的状态被混合/覆盖。你有建议跟踪几个页面的树状态吗? – Aranian
在这种情况下,我会继续与svenmeier的答案。 – iluwatar