我正在使用GWT编写网络应用程序,遵循GWT网站上的MVP教程(即使用{{link2:
我有些困惑如何最好地拥有一个侧边栏进行导航(即单击导航链接更改主窗口中的内容。见下文)。
我不确定这是否是最佳方法。 (我猜导航面板和内容窗口之间的双向通信可以通过“EventBus”来完成?当涉及更改UI时,这种方法是否灵活(例如用于移动站点)?)
我想知道人们建议采取什么最佳方式。我已经阅读了很多讨论Activities and Places,但据我所知,它们与MVP架构有些不同(activities and places对于browser history management非常有用,尽管我认为我的
任何建议将不胜感激。
History
}}导航)。我有些困惑如何最好地拥有一个侧边栏进行导航(即单击导航链接更改主窗口中的内容。见下文)。
--------------------
| | |
| nav | main |
| | window |
| | |
| | |
--------------------
我认为一种可能的做法是在HTML中声明两个<div>
标签,用于导航和内容。例如:
@Override
public void onValueChange(ValueChangeEvent<String> event) {
...
if (token.equals("navigation")) {
presenter = new NavigationPresenter(rpcService, eventBus, new NavigationView());
presenter.go(RootPanel.get("navigation"));
}
...
if (token.equals("content")) {
presenter = new ContentPresenter(rpcService, eventBus, new ContentView());
presenter.go(RootPanel.get("content"));
}
...
}
我不确定这是否是最佳方法。 (我猜导航面板和内容窗口之间的双向通信可以通过“EventBus”来完成?当涉及更改UI时,这种方法是否灵活(例如用于移动站点)?)
我想知道人们建议采取什么最佳方式。我已经阅读了很多讨论Activities and Places,但据我所知,它们与MVP架构有些不同(activities and places对于browser history management非常有用,尽管我认为我的
History
的使用涵盖了它(?))。任何建议将不胜感激。