要使用gwt-dispatch,我们创建一个像这样的对象:

private static final DispatchAsync dispatchAsync = GWT.create(DefaultDispatchAsync.class);


有什么方法可以通过注入来实现,我的意思是如何将这个DispatchAsync对象注入到其他需要使用它的类中。

这与@Inject注释有关!

最佳答案

是的,您可以使用Gin通过@Inject注释来注入您的调度接口。

首先,您需要为DispatchAsync接口配置Gin绑定到Gin ClientModule中的实现。

bind(DispatchAsync.class).to(DefaultDispatchAsync.class).in(Singleton.class);


完成此操作后,您可以让Gin在您的构造函数中注入调度程序。

class foo {
    private final DispatchAsync dispatcher;

    @Inject
    public foo(final DispatchAsync dispacher) {
        this.dispatcher = dispatcher;
    }
}

09-17 09:46