【问题标题】:MVP: multiple Views one PlaceMVP:多个视图一个地方
【发布时间】:2015-07-09 19:52:06
【问题描述】:

我目前正在开发一个应该实现 MVP 设计模式的 Web 应用程序,我有点困惑:

  1. 该应用程序将只有一个由三个较小视图组成的地方显示,不可能进入另一个地方只是为了与视图交互(从一个视图中选择某些内容将需要其他两个视图加载一些不同的数据和让他们可以编辑它),在这种情况下使用 MVP 是个好主意吗?
  2. 假设我将继续使用 MVP 设计模式,是否只有一个 Place 可以让我拥有三个不同的 View(活动)?问题出现了,因为我查看的所有 Web 应用程序通常都有一个 Place-一个 Activity 关系,这是有道理的,因为当您浏览另一个页面时,它代表另一个具有自己 Activity 的地方(不是我的情况)。
  3. 此外,我应该如何让每个 View 的 Presenter 相互交互?例如,我需要在第一个视图中的 ClickEvent 上宣布其他两个视图,它们应该根据所选项目加载一些数据?最后我应该只使用一个 Presenter 来处理所有的业务逻辑吗?

【问题讨论】:

    标签: design-patterns mvp enterprise gwt-mvp multiple-views


    【解决方案1】:

    您可以将选择某些内容的视图设为主视图,将其他两个视图作为子视图。即使这样,您也有一个主演示者和两个子演示者。如果主视图中的选择发生变化,主演示者会告诉子演示者重新加载新数据。 subviews 和 subpresenters 不需要知道他们的 master。

    【讨论】:

    • 最后我使用了一个主要的地方,其中包含 3 个活动,每个活动都有其特定的视图,并且演示者将通过彼此之间的事件进行通信。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-13
    • 1970-01-01
    • 1970-01-01
    • 2013-06-28
    • 2018-12-03
    相关资源
    最近更新 更多