3

我一直在关注 GWT MVP 教程(https://developers.google.com/web-toolkit/articles/mvp-architecture-2),虽然这一切都很有意义,但我在从示例中获取它时遇到了一些麻烦他们向更大规模的应用程序解释。

特别是,我想使用 DockLayoutPanel 来拥有单独的导航、内容和标题部分。我正在努力解决的主要问题是:主停靠面板在哪里?它是与它自己关联的演示者的视图吗?它是否构成我不想使用视图的特殊情况,因为这实际上只是基本的页面布局?

从以前遇到过类似问题的人那里获得一些实用的见解将不胜感激。

4

2 回答 2

1

好吧,我认为这取决于。

但我建议创建一个View (即MainPageView)与它自己的关联Presenter(即MainPagePresenter),即使几乎没有业务逻辑并且View只定义应用程序的布局。
也许将来会有一些业务逻辑。
例如,如果您想向用户显示警报或通知弹出窗口,您可能会在此View.
因此,您MainPagePresenter将在全局上侦听 Notification 事件EventBus,一旦从任何嵌套触发事件Presenter,它将在MainPageView.

另一个用例是如果您想在北面板中显示面包屑。
当然,您可以Presenter为面包屑创建一个单独的文件,但恕我直言,这太过分了。但是,您可以在MainPagePresenter

我使用GWTP作为我的 MVP 框架,创建 View/Presenter 对非常简单,它还支持嵌套PresenterWidgets,例如可以嵌入到您的任何面板中DockLayoutPanel

于 2012-11-05T09:08:33.943 回答
0

在搜索了相关内容之后,我偶然发现了另一个线程,它提出了一个类似的问题并且对我很有见地: GWT MVP - 维护多个彼此分开的显示器

于 2012-11-07T07:17:06.413 回答