我一直在关注GWT MVP教程(https://developers.google.com/web-toolkit/articles/mvp-architecture-2)虽然这一切都很有意义,但我从他们向更大规模的应用程序解释的例子中解决它时遇到了一些麻烦。
特别是,我想使用DockLayoutPanel来获得单独的导航,内容和标题部分。我正在努力解决的主要问题是:主码头小组在哪里居住?这是与自己相关的演示者的观点吗?它是否构成一个我不想使用视图的特殊情况,因为这实际上只是基本的页面布局?
非常感谢从以前遇到类似问题的人那里获得一些实用的见解。
答案 0 :(得分:1)
嗯,我认为一如既往。
但是我建议使用它自己的关联View
(即 MainPagePresenter )创建一个Presenter
(即 MainPageView ),即使有几乎没有业务逻辑,View
只定义了应用程序的布局
也许在未来会有一些商业逻辑
例如,如果您想向用户显示提醒或通知弹出窗口,您可以在此View
中执行此操作。
因此,您的MainPagePresenter
会在全局EventBus
上侦听通知事件,一旦从任何嵌套Presenter
触发事件,它将在MainPageView
中显示通知弹出窗口。
如果您想在北面板中显示面包屑,则会出现另一个用例
当然你可以为面包屑创建一个单独的Presenter
,但恕我直言,这太过分了。但是,您可以在MainPagePresenter
我正在使用GWTP作为我的MVP框架,在那里创建View / Presenter对非常简单,它还支持嵌套PresenterWidgets
,您可以将其嵌入DockLayoutPanel
的任何面板中。 1}}
答案 1 :(得分:0)
在搜索了相关内容后,我偶然发现了另一个提出类似问题的帖子,对我来说非常有见地: GWT MVP - maintaining multiple displays that are separate of one another