0

假设您有一个AcceptsOneWidget包含选项卡式窗格的“显示区域”( )。单击不同的选项卡(即,从“ fantasyo ”到“ profile ”)会导致在窗格中显示全新的内容。这似乎是代码分割的完美用例,因为在用户单击“配置文件”选项卡之前,他们不需要下载显示它所需的代码。(注意:如果任何 GWT 专家不同意并且认为这不是代码拆分的正确用例,那么请向我指出这一点,但这不是这个问题的重点,所以请多多包涵!)

在此处输入图像描述

现在,如果我基本 GWT 体系结构的理解是正确的,那么显示“配置文件”选项卡所必需的代码由Activity(ies)、Place(s) 组成,也许还有一些 MVP 内容,例如 a PresenterModuleEntryPoint等。当然这个会因应用程序和开发人员的不同而有所不同(正如我在 GWT 中了解到的,有很多方法可以实现相同的目标),但无论如何,它都是一堆 MVP/Activity/Place “东西”。为了这个问题,我喜欢这个 SO question的回答者提出的模型。

在阅读了这篇关于 AsynchProvider 模式的文章后,我试图将所有这些最佳实践结合在一起并实现一个架构:

  • 我实现了代码拆分,使得窗格中的每个选项卡都是代码拆分(是代码拆分吗?codesplat作为它自己的片段,并且只有当/当用户第一次点击它时才会下载
  • 显示/渲染/实现每个片段(选项卡/窗格)所需的所有代码都整齐地组织并遵循AsynchProvider上述文章中引用的模式;这允许它被划分并且不依赖于其他片段

我开始将所有部分放在一起,但仍然没有看到这两个概念如何在工作代码中联系在一起。

我发现 GWT 是神秘的、强大的和美妙的,但是如果没有可遵循的实际代码示例,则很难学习。当然,这些线框在“ fantasyo ”或“ profile ”窗格中并没有真正显示出任何复杂性,所以请再次忍受并假装它们都是相当复杂的显示区域,具有许多丰富的 UI 组件。提前致谢!

4

1 回答 1

2

如果显示区域 包含选项卡窗格,那么无论您使用的是活动还是地点都无关紧要。

要拆分选项卡内容,只需将 aSimplePanel作为真正的选项卡内容,并通过侦听SelectionEvents 来加载其内容。
或者,您可以使用将返回 a 的 aLazyPanel异步加载其余代码。createWidgetSimplePanel

于 2012-10-23T10:06:47.170 回答