我对gwt比较新,我在使用JsArrayInteger时遇到了问题。这是我的代码:
package com.google.gwt.sample.stockwatcher.client;
public class StockWatcher implements EntryPoint {
JsArrayInteger a;
public void onModuleLoad() {
a = (JsArrayInteger) JsArrayInteger.createArray();
a.push(1);
a.push(2);
a.push(4);
a.push(5);
test();
}
public static native void test() /*-{
var p = [1,2,3,4,5,6];
var q = this.@com.google.gwt.sample.stockwatcher.client.StockWatcher::a;
alert(q);
alert(p);
}-*/;
}
结果是'undefined'和[1,2,3,4,5,6]而不是[1,2,3,4,5]和[1,2,3,4,5,6] 。我想使用字段a并处理该数组(将其传递给第三方库)。
教程http://code.google.com/webtoolkit/doc/latest/DevGuideCodingBasicsJSNI.html没有解释如何使用默认的JavaScriptObjetcs。有人发现了错误吗?
致以最诚挚的问候,
迈克尔
答案 0 :(得分:1)
public static native void test() /*-{
var p = [1,2,3,4,5,6];
var q = this.@com.google.gwt.sample.stockwatcher.client.StockWatcher::a;
alert(q);
alert(p);
}-*/;
请注意,此方法为static
,但您指的是this
。传入实例并使用该实例代替this
,或将方法更改为static
。