ここにこのコードがあり、Dart に変換しています。問題はコールバックにあります。
function stop(e) {
var node = e.target.getContainer();
node[SMap.LAYER_MARKER].style.cursor = "";
var coords = e.target.getCoords();
alert("Cílová pozice: " + coords.toWGS84(2).reverse().join(" "));
}
var signals = mapa.getSignals();
signals.addListener(window, "marker-drag-stop", stop);
Dart での私のコード
var signals = mapa.callMethod('getSignals', []);
signals.callMethod('addListener', [context, 'marker-drag-stop', stop]);
}
stop(MouseEvent event) {
var target = event.target.callMethod('getContainer',[]);// problem
context.callMethod('alert', ['texttext']);
}
stop コールバックはちゃんと呼ばれているのですが、line はどうすればいいのかわかりませんvar node = e.target.getContainer();
。e.target は何かを返しますが、次に何を返しますか。
副次的な質問:mapa.callMethod('addLayer', [layer]).callMethod('enable', []);
構文です。javascript メソッドを呼び出す唯一の可能な方法です。少し面倒だと思います:-/
このjs-interop全体はちょっと面倒です。自分で解決できず、各手順の後にもう一度質問する必要があります。すべての相互運用のユース ケースをカバーするときに、Dart を使用して JS を忘れることができるようになることを願っています。