处理复合小部件的事件

发布于 2024-12-09 14:23:22 字数 283 浏览 1 评论 0 原文

我正在使用 UiBinder 创建一个复合小部件。该小部件是一个登录表单,因此基本上它有标签、文本框和按钮。我计划在也使用 UiBinder 声明的视图中使用此小部件。所以,基本上我已经有了这些文件:LoginForm.ui.xml、LoginForm.java、MainViewImpl.ui.xml 和 MainViewImpl.java。

我必须使用 @UiHandler 注释在 LoginForm.java 中定义登录表单的事件处理程序,但是我想知道是否有办法在 MainView.java 中定义这些事件处理程序。这可能吗?

I'm creating a composite widget using UiBinder. The widget is a login form, so basicly it has labels, textboxes and a button. I'm planning to use this widget within a view which is also declared using UiBinder. So, basicly I've got these files: LoginForm.ui.xml, LoginForm.java, MainViewImpl.ui.xml and MainViewImpl.java.

I'd have to define the event handlers of the login form in LoginForm.java using the @UiHandler annotation, however I'd like to know if there is a way to define those event handlers in MainView.java. Is that possible?

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

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

发布评论

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

评论(1

静谧 2024-12-16 14:23:22

不。那会破坏组件设计模式。

您所要做的就是在您的 LoginForm 组件上暴露事件,MainViewImpl 将能够侦听这些事件。

如果这是“一次”,我就不会费心创建事件,而是简单地使用 MainViewImpl 实现并传递给 LoginForm回调接口> 让它回调。
这类似于 Presenter 接口“nofollow">MVP – 第二部分文章通知演示者。

No. That would break the component design pattern.

What you'd have to do is expose events on your LoginForm component that the MainViewImpl will be able to listen.

If it's a "one shot" though, I wouldn't bother creating events and instead simply use a callback interface that MainViewImpl implements and passes to LoginForm for it to call it back.
This is similar to the Presenter interface called back by the view in the MVP – Part II article to notify the presenter.

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