在我见过的大多数活动和地点示例中,人们使用 SimplePanel 作为 ActivityManager 的显示。
我想知道使用 DeckPanel/DeckLayoutPanel 而不是 SimplePanel 是否有好处。围绕实现 AcceptsOnWidget 的 Deck 面板创建包装器相当简单。
我还没有看到任何地方讨论过这个话题。在 GWT 中普遍使用 MVP+Activity 之前,人们通常使用 Tab 面板(内部使用甲板类型面板)和 Deck 面板来控制给定视图内面板之间的切换。
两者之间的区别是 SimplePanel.setWidget(..) 将从 DOM 中删除前一个子元素并附加新的小部件,而甲板类型面板将使用 CSS 来控制当前面板的可见性(即“显示:无”隐藏非活动面板)。
如果使用甲板面板,通常意味着您将在 DOM 中拥有更多元素。我想这会使用更多的内存并使应用程序“缓慢”,即使这些节点不可见(“显示:无”)。这是真的?
如果这是真的,为什么 Google 为 TabPanel/TabLayoutPanel 使用甲板面板样式 impl 而不是在内部使用 SimplePanel?
一种方法比另一种方法更有利吗?