Я хочу реализовать следующий код Dart:Ссылаясь на «этом» в Дарта JS Interop
var HelloWorldScene = cc.Scene.extend({
onEnter:function() {
this._super();
}
});
Моя реализация Dart выглядит следующим образом:
class HelloWorldScene {
HelloWorldScene() {
var sceneCollectionJS = new JsObject.jsify({ "onEnter": _onEnter});
context["HelloWorldScene"] = context["cc"]["Scene"].callMethod("extend", [sceneCollectionJS]);
}
void _onEnter() {
context["this"].callMethod("_super");
}
}
К сожалению, я получаю следующую ошибку при работает код:
The null object does not have a method 'callMethod'
на следующей строке:
context["this"].callMethod("_super", []);
контекст ["this"] кажется нулевым, поэтому мой вопрос: как я могу ссылаться на эту переменную из Dart?
UPDATE 1: Полный пример кода можно найти на GitHub: https://github.com/uldall/DartCocos2dTest
Я думаю, вы сделали опечатку: 'context [this] .callMethod (" _ super ");' (без кавычек). – GuyT
Без кавычек «это» относится к экземпляру класса HelloWorldScene Dart. Я хочу вызвать _super() в переменной «this», находящейся в Javascript VM. – uldall
Можете ли вы опубликовать полный пример. пожалуйста? – Robert