javascript - JavaScript 中的 Dart 事件

标签 javascript events dart dart-js-interop

我有这个代码 here ,我正在将其转换为 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']); 
}

正确调用了停止回调,但我不知道如何处理 var node = e.target.getContainer(); 行。 e.target 返回了一些东西,但接下来是什么。

附带问题:是 mapa.callMethod('addLayer', [layer]).callMethod('enable', []); 语法,只是调用 javascript 方法的一种可能方式。我觉得有点麻烦:-/

整个 js-interop 东西有点乱。我无法自行解决,需要在每一步后再次询问。我希望当我涵盖所有互操作用例时,我将能够只使用 Dart 而忘记 JS。

最佳答案

我认为这应该可以解决问题:

var target = new js.JsObject.fromBrowserObject(e)['target']
  .callMethod('getContainer', []);

关于javascript - JavaScript 中的 Dart 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28584388/

相关文章:

javascript - 一次绑定(bind)到多个元素上的事件时有性能提升吗?

c# - Windows 事件 - 有人知道如何指定 'KEYWORDS' 值吗?

flutter - Flutter:如何以编程方式周期性地滚动(从流中)?

javascript - 从外部 javascript 设置 ng-model 值

javascript - 使用 JS 从不同的 html 文件访问 DOM

java - 如何通过我的应用程序将事件设置到设备日历?

Google Maps Marker 的 Flutter 图像覆盖

javascript - 从大型 JSON 文件读取数据有危险吗?

带有种子的 Javascript 随机排序

flutter - 潜在无限项目列表 : ListView. builder、StreamBuilder、FutureBuilder 还是其他?