【问题标题】:Using GIN and mvp4g使用 GIN 和 mvp4g
【发布时间】:2010-05-04 23:00:23
【问题描述】:

我想在我的应用程序中使用 gwt-dispatch 命令模式实现。我也在使用 mvp4g。如何使DefaultDispatchAsync 可用于使用 GIN 将其注入到我的演示者中 或使其全球可用,以便我可以从我的演示者 访问它?

【问题讨论】:

    标签: gwt gwt-gin gwt-dispatch gwt-mvp


    【解决方案1】:

    您需要在 gin 模块中为 DefaultDispatchAsync 类设置绑定。这将为 DefaultDispatchAsync 类实现的 DispatchAsync 接口设置绑定。然后,您可以将 DispatchAsync 添加到您的演示者构造函数中,并根据需要由 gin 注入它。

    然后我通常让我的演示者包含一个私有 DispatchAsync 成员,我将注入的 DispatchAsync 参数分配给构造函数内部。然后就可以根据需要在presenter类中使用dispatch了。

    所以在你的 GinModule 的配置方法中,添加一行

    bind(DefaultDispatchAsync.class);
    

    然后在您的演示者构造函数中,

    @Inject
    public TestPresenter(/*Other injected arguments*/, final DispatchAsync dispatcher) {
       this.dispatcher = dispatcher;
    }
    

    【讨论】:

    • 我必须在应用程序启动期间设置我的注入器和 ginmodule,所以我假设它会在我的 gwt 模块入口点的某个地方?
    • 是的,您可以使用 GWT create 在您的 Entrypoint 类中设置您的 Ginjector。例如私有最终 GwtGinjector 注入器 = GWT.create(GwtGinjector.class);然后,您可以使用创建的注入器实例来检索您的顶级演示者并启动您的应用程序。
    • 非常感谢 - 它基本上可以工作,但现在我需要一些关于 gwt-dispatch 问题的帮助,发布在这里:stackoverflow.com/questions/2776726/…
    猜你喜欢
    • 2011-02-16
    • 2018-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-15
    • 2016-08-17
    相关资源
    最近更新 更多