我正在使用gwt平台并试图实现GWT的编辑器框架。但我从主持人那里得不到它的工作。有各地的网络一些答案,那说我必须以某种方式注入到EditorDriver演示,但我不知道如何做到这一点?如何使用GWT的编辑器框架与gwt平台?
在这个我试过没有成功的那一刻:
public class MyPresenter extends Presenter<MyPresenter.MyView, MyPresenter.MyProxy> implements MyUiHandlers {
public interface MyView extends View, HasUiHandlers<MyUiHandlers>, Editor<MyModel> {}
@ProxyStandard
@NameToken(NameTokens.myPage)
@NoGatekeeper
public interface MyProxy extends ProxyPlace<MyPresenter> {}
interface Driver extends SimpleBeanEditorDriver<MyModel, MyView> {}
private Driver editorDriver;
DispatchAsync dispatcher;
@Inject
public MyPresenter(EventBus eventBus, MyView view, MyProxy proxy, DispatchAsync dispatcher) {
super(eventBus, view, proxy);
getView().setUiHandlers(this);
this.dispatcher = dispatcher;
MyModel m = new MyModel();
m.setId(1L);
m.setUsername("username");
m.setPassword("password");
editorDriver = GWT.create(Driver.class);
editorDriver.initialize(this.getView());
editorDriver.edit(m);
}
...
}
它的工作原理,如果我明确地指定ViewImplementation,但是这不是MVP应该的工作方式:
interface Driver extends SimpleBeanEditorDriver<MyModel, MyViewImpl> {}
...
editorDriver.initialize((MyViewImpl) this.getView());
我会很高兴,如果有人可以给我一个例子,如何做是正确的。
感谢
谢谢:)也许你说得对,如果视图知道模型是不坏,“因为我必须在ViewInterface中设置很多setter和getters。这意味着视图也知道它的模型(种类)... –
这是一个很好的解决方案。谢谢! – confile
谢谢。经过2天的编辑和GWTP的努力,终于让它成功了。如果您对此做了一些改进,请告诉我。 – masterdany88