我们已经使用 GWT 大约 4 年了。本机 GWT 中最常讨论的特性之一是数据绑定。阅读另一个 Google 产品的 AngularJs,我发现了http://devgirl.org/2013/03/21/fun-with-angularjs/。我不想使用 GXT 或任何其他第三方工具。我也希望避免与生成器相关的解决方案。
有什么方法可以在纯本机 GWT 中实现?
GWT 不能开箱即用地提供这个有什么具体原因吗?
我们已经使用 GWT 大约 4 年了。本机 GWT 中最常讨论的特性之一是数据绑定。阅读另一个 Google 产品的 AngularJs,我发现了http://devgirl.org/2013/03/21/fun-with-angularjs/。我不想使用 GXT 或任何其他第三方工具。我也希望避免与生成器相关的解决方案。
有什么方法可以在纯本机 GWT 中实现?
GWT 不能开箱即用地提供这个有什么具体原因吗?
你试过GWT 果胶吗?
前段时间我在一个更大的项目中成功地使用了它。
我建议你试试 HexaBinding,它是非侵入性的,只专注于数据绑定。这是链接:https ://github.com/learno/hexa.tools/blob/master/hexa.binding/README.md
它适用于纯 Java、GWT,并且很快也适用于 Android 和 JavaFX。它甚至可以与 J2Objc 一起使用,但还不确定……
我读过你在 devgirl 上提到的关于 AngularJS 的帖子。在那篇文章中,“2 路数据绑定”是指代码的属性,用于自动反映视图当前显示的数据发生的更改。
这是自 2.1 版以来在 GWT 中使用Cell Widgets实现的
在我上面链接的 Cell Widgets 文档的第一段中,明确指出:
单元小部件可以接受来自任何类型数据源的数据。数据模型处理异步更新以及推送更新。当您更改数据时,视图会自动更新。
如果您想在 GWT 中做一些与 devGirl 帖子中的示例一样基本的事情,您需要编写一个 onKeyup 处理程序(在 AngularJS 中,您应该为此编写一个Scope ),它将您输入的内容复制到链接标签。像这样的东西:
...
final TextBox nameField = new TextBox();
final Label enteredName = new Label("");
...
public void onKeyUp(KeyUpEvent event) {
enteredName.setText(nameField.getText());
}
...