【发布时间】:2013-03-28 07:51:25
【问题描述】:
我是 GWT 的新手。我想知道,是否可以从 GWT Presenter 设置单元格表格内容?从视图本身设置单元格表数据并仍然遵循 MVP 模式是否可以?
【问题讨论】:
我是 GWT 的新手。我想知道,是否可以从 GWT Presenter 设置单元格表格内容?从视图本身设置单元格表数据并仍然遵循 MVP 模式是否可以?
【问题讨论】:
不要将 GWT 演示者和它的模式混淆。如您所知,GWT Presenter 是 View 和 Model 之间通信的合同。最好在 Presenter 中编写服务器 dispatch 代码和 事件总线 代码,并在 View 本身中为 GWT 小部件设置数据。
使用dispatch.execute 方法从模型获取单元格表数据到演示者之后。在onSuccess 方法中,调用在celltable 中设置数据的方法。
定义一种在视图界面中设置单元格表数据的方法
public interface MyView extends View
{
void setCellTableData(List<Data> dataList);
}
它将在视图类中实现,在那里编写一个设置celltable数据的代码。
在presenter中,onSuccess方法设置数据如
dispatch.execute(new GetDataAction(),
new AsyncCallback<GetDataActionResult>() {
@Override
public void onFailure(Throwable caught) {
}
@Override
public void onSuccess(List<Data> result) {
getView().setCellTableData(result);
}
};
});
【讨论】:
View 仅用于呈现 UI。
它不应保持specific domain object 的状态。
所有view 渲染业务逻辑都应该是Presenter 层的一部分。
【讨论】: