最佳实践 - 数据提交GWT MVP

时间:2012-04-05 07:14:22

标签: gwt gwt-mvp

我正在寻找GWT中使用MVP提交表单的一些最佳实践。

在我的应用程序中打开一个对话框,其中呈现简单的from。单击“确定”按钮时,将读取元素值并将其分配给值对象。然后将此对象添加到新位置。

查看:

   onOkButtonClicked(event){
       // read values from dialog box elements
       // assign the values to ValueObject(name, number, address)
       presenter.goto(new ListRecordPlace("list","addrecord", valueObject);
    }

的活动:

ListRecordActivity(ListRecordPlace place, eventBus){
   this.place = place;
}

start(...){
   if(this.place.getAction().equals("addrecord")){
      // RPC call to add the new record: this.place.getNewRecord();
      // RPC returns list of records
      view.setRecordList();
      container.setWidget(view.asWidget());
   }
}

这是通过MVP活动和地点向服务器提交数据的正确方法吗?

2 个答案:

答案 0 :(得分:0)

Place不是操作,它(顾名思义)是位置

所以不,这是绝对错误的做事方式。您应该执行RPC以响应单击“确定”按钮,然后然后才会转到可以看到记录的ListRecordPlace

答案 1 :(得分:0)

当您使用MVP时,RPC服务的调用应在演示者中完成。

确定点击视图 - > view :call presenter(presenter.okClicked()) - > 演示者:更新值并调用RPC服务以保存 - > 演示者:成功保存后,转到其他地方。

当您转到下一个地方时,不应使用Place对象传输数据。 负责处理新场所的对象应该负责数据更新和显示。