gpt4 book ai didi

java - 从 gwt 返回值到 javascript-jsni

转载 作者:行者123 更新时间:2023-12-01 19:02:10 25 4
gpt4 key购买 nike

我正在尝试通过 JSNI 将 GWT 中的 java 函数的值返回到 javascript

    static public int call() { return 20; }

public static native int jstest() /*-{
try{
val=@com.xxxx.package::call()();
window.alert("Val:"+val);
return $wnd.val;
} catch(e) {
console.error(e.message);
}
}-*/;

在 javascript alert(document.val); 中,我最终遇到异常 从 JSNI 方法返回了除 int 以外的内容。我想我在将值返回给 javascript 时搞砸了。请告诉我哪里错了!

最佳答案

通过将 val 声明为全局,它确实被分配到 window 对象上(注意:不是 $wnd 对象)。有时对于 GWT,这两者是相同的,有时则不同(这取决于您使用的链接器)。

这就是为什么您需要更改代码以读取

$wnd.val = @com.xxxx.package::call()();

或者删除全局变量:

var val = @com.xxxx.package::call()();
return val;

关于java - 从 gwt 返回值到 javascript-jsni,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11842244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com