如何监听 GWT 事件总线上调度的所有事件?

发布于 2024-12-22 07:04:44 字数 41 浏览 6 评论 0原文

我希望能够侦听在事件总线上调度的所有事件,无论类型如何。我该怎么做?

I want to be able to listen to all events dispatched on the Event Bus, regardless of type. How can I do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

怎樣才叫好 2024-12-29 07:04:44

根据 Thomas 的建议,以下是一个示例解决方案:

    public class MyEventBus extends SimpleEventBus {

    @Override
    public void fireEvent( GwtEvent<?> event ) {
        trackEvent( "Event Fired", event.getClass().toString() );
        super.fireEvent( event );
    }

    public native void trackEvent( String category, String action ) /*-{
        $wnd._gaq.push([ '_trackEvent', category, action ]);
    }-*/;
}

Taking a cue from Thomas's suggestion, here is a sample solution:

    public class MyEventBus extends SimpleEventBus {

    @Override
    public void fireEvent( GwtEvent<?> event ) {
        trackEvent( "Event Fired", event.getClass().toString() );
        super.fireEvent( event );
    }

    public native void trackEvent( String category, String action ) /*-{
        $wnd._gaq.push([ '_trackEvent', category, action ]);
    }-*/;
}
那伤。 2024-12-29 07:04:44

SimpleEventBus 不允许您执行此操作,但您可以轻松包装或扩展它并覆盖 fireEvent 等。捕获所有已调度的事件。

SimpleEventBus doesn't let you do this, but you could easily wrap or extend it and override fireEvent et al. to catch all dispatched events.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文