1

我正在将我的 Java LIBGDX 游戏移植到 Javascript。有一些 JSNI 代码看起来像这样:

private native void hello()
/*-{
    var object1 = {default: 'foo', b: 42};
    console.log(object1.default);
}-*/;

GWT 拒绝编译这个,给我这个错误:

      [ERROR] Line 38: invalid property id
>       var object1 = {default: 'foo', b: 42, c: {}};
> ------------------------^

我在本机 Javascript 中尝试了相同的代码它工作正常。

我猜“默认”是 GWT 不允许的某种关键字,但我需要使用它,因为它是我需要将对象发送到的接口所期望的,特别是 Facebook Instant SDK 及其LocalizableContent对象。

任何帮助将不胜感激!

4

1 回答 1

3

使其成为字符串而不是标识符:

private native void hello() /*-{
    var object1 = {'default': 'foo', b: 42};
    console.log(object1['default']);
}-*/;
于 2018-12-01T08:15:42.367 回答