GWT 编译器不允许在我的 JSNI 块中将"默认"作为 JavaScript 对象属性



我正在将我的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中尝试了相同的代码,它运行得很好。

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

任何帮助都将不胜感激!

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

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

最新更新