深入探索 JavaScript 原生接口(JSNI)
1. 理解 JSNI
在开发中,JSNI 编码的理念是尽可能减少在 “黑暗面”(JavaScript 领域)花费的时间。每个 JSNI 方法应处于原子级别,即执行一个清晰的功能,这样可以隔离问题,并尽可能在强类型的 Java 领域保持控制。
如果你熟悉为其他语言编写 Java 本地方法,那么 JSNI 会让你感觉相对熟悉。Java 本地接口(JNI)允许 Java 代码与用其他语言(如 C、C++ 或汇编)编写的组件进行交互,而 JSNI 则是 GWT Java 中用于与 JavaScript 组件交互的等效接口,其语法与 JNI 类似。
下面是一个简单的 JSNI 方法调用示例:
public static native void method_name(ObjectTyp someData)
/*-{
someData.@org.gwtbook.client.Data::data1 == "GWT In Action"
}-*/;
2. 从 Java 跨越到 JavaScript
要在 GWT 应用程序中包含 JavaScript 代码,必须以特定方式编写,以便 Java 语法检查器和 GWT Java 编译器能够识别并正确处理它。
一个基本的 JSNI 方法定义如下:
public static native void method_name()
/*-{
}-*/
超级会员免费看
订阅专栏 解锁全文
4071

被折叠的 条评论
为什么被折叠?



