假设您有一个AcceptsOneWidget
包含选项卡式窗格的“显示区域”( )。单击不同的选项卡(即,从“ fantasyo ”到“ profile ”)会导致在窗格中显示全新的内容。这似乎是代码分割的完美用例,因为在用户单击“配置文件”选项卡之前,他们不需要下载显示它所需的代码。(注意:如果任何 GWT 专家不同意并且认为这不是代码拆分的正确用例,那么请向我指出这一点,但这不是这个问题的重点,所以请多多包涵!)
现在,如果我对基本 GWT 体系结构的理解是正确的,那么显示“配置文件”选项卡所必需的代码由Activity
(ies)、Place
(s) 组成,也许还有一些 MVP 内容,例如 a Presenter
、Module
、EntryPoint
等。当然这个会因应用程序和开发人员的不同而有所不同(正如我在 GWT 中了解到的,有很多方法可以实现相同的目标),但无论如何,它都是一堆 MVP/Activity/Place “东西”。为了这个问题,我喜欢这个 SO question的回答者提出的模型。
在阅读了这篇关于 AsynchProvider 模式的文章后,我试图将所有这些最佳实践结合在一起并实现一个架构:
- 我实现了代码拆分,使得窗格中的每个选项卡都是代码拆分(是代码拆分吗?codesplat?)作为它自己的片段,并且只有当/当用户第一次点击它时才会下载
- 显示/渲染/实现每个片段(选项卡/窗格)所需的所有代码都整齐地组织并遵循
AsynchProvider
上述文章中引用的模式;这允许它被划分并且不依赖于其他片段
我开始将所有部分放在一起,但仍然没有看到这两个概念如何在工作代码中联系在一起。
我发现 GWT 是神秘的、强大的和美妙的,但是如果没有可遵循的实际代码示例,则很难学习。当然,这些线框在“ fantasyo ”或“ profile ”窗格中并没有真正显示出任何复杂性,所以请再次忍受并假装它们都是相当复杂的显示区域,具有许多丰富的 UI 组件。提前致谢!