0

我正在研究 GWT elemental 作为访问 GWT 中 java dom 的更快方法。然而,当我查看 maven 依赖项的源代码时,我看到的只是 js 覆盖。例如:

public class JsNode extends JsElementalMixinBase  implements Node {
  protected JsNode() {}

  public final native JsNamedNodeMap getAttributes() /*-{
    return this.attributes;
  }-*/;

  public final native String getBaseURI() /*-{
    return this.baseURI;
  }-*/;

  public final native JsNodeList getChildNodes() /*-{
    return this.childNodes;
  }-*/;

  public final native JsNode getFirstChild() /*-{
    return this.firstChild;
  }-*/;

  public final native JsNode getLastChild() /*-{
    return this.lastChild;
  }-*/;
....

这与默认 gwt xml dom 中的内容相差不远。我在这里想念什么?

谢谢!

4

1 回答 1

2

Elemental v1 不再定期更新,它使用 JSO 和 JSNI,因为那是当时唯一的选择。

Elemental v2 使用 JsInterop,这是一种新的、面向未来的从 Java 代码中描述 JS 对象的方式。来源(和问题跟踪)位于https://github.com/google/elemental2/。您可以通过搜索 groupId 在 maven 中找到 elemental2 com.google.elemental2http ://search.maven.org/#search%7Cga%7C1%7Cg%3A%22com.google.elemental2%22

https://github.com/google/jsinterop-generator是用于自动生成 elemental2 的工具,理论上可以在任何其他 JS 库上使用,让 GWT 应用程序使用它。我个人没有太多运气让它工作,但该工具的主要目的仍然是生成 elemental2 源,因此随着人们使用它,这将继续改进。

于 2018-03-20T04:11:29.447 回答