1

我们一直在使用推荐的 GWT 方法以 MVP 方式构建应用程序的一部分。我们使用的逻辑基于 Google 的示例 - Presenter 获取/准备数据并将其设置在 View 上,并且 View 包含对它调用的 Presenter 的引用(例如在 UiHandlers 中)。

我们构建的应用程序的某些部分应该在其他视图中重用。例如 - 有时是应用程序一部分的“主视图”的视图 - 可以在应用程序另一部分的弹出窗口中使用(当然,在另一种情况下,视图/演示者的初始化方式不同,但基本上是一样的)。

做这样的事情的正确方法是什么?如果不求助于丑陋的 hacky 东西,我似乎找不到合适的。

例如 - 如果我将重用组件的展示器放在主视图中 - 很容易初始化重用组件,但在主展示器中接收结果却很难看。这可以通过传递一个 runnable 或创建一个自定义处理程序或将父 Presenter 本身传递给重用的 Presenter 来解决。

所有这些方法对我来说似乎都不正确,而且看起来很丑陋。有什么想法/经验吗?

4

2 回答 2

1

您所描述的是能够由 2 个不同的演示者控制的视图。以接口的形式抽象出通用 API 后面的那些演示者就足够了。

您还可以将其视为在两个不同视图中使用的复合小部件。然后,复合小部件将公开事件和公共 API,两个视图都可以连接到它们的特定演示者。

于 2012-10-19T13:51:47.933 回答
0

查看活动和地点,它可以帮助您设计和构建您的应用程序。

https://developers.google.com/web-toolkit/doc/latest/DevGuideMvpActivitiesAndPlaces

于 2012-10-19T06:49:20.640 回答