繁体   English   中英

收听Dart的javascript事件

[英]Listen to javascript events from Dart

在Dart中有没有办法从javascript库中侦听事件?

例如,当有人释放滑块时,jqrangeslider http://ghusse.github.io/jQRangeSlider/包会发出userValueChanged事件。

通过js / js.dart包在Dart中监听该事件是否容易?

很想在Dart中看到一些监听器的例子,它可以从javascript库中监听这样的事件。

感谢js包,你可以处理几乎所有的js代码。 这是以下javascript代码段的dart版本:

$("#slider").bind("valuesChanged", function(e, data){
  console.log("Will be executed");
});

在达特:

js.scoped((){
  js.context.jQuery("#slider").bind("valuesChanged", new js.Callback.many((e, data) {
    print("Will be executed");
  }));
});

请注意,我使用jQuery而不是$因为否则你会遇到dart2js的 问题 (参见问题2265 )。

基本上,当你在JS中使用回调函数时,你必须使用js.Callback.manyjs.Callback.once来包装你的回调。 有关更多详细信息,请参阅管理回调生存期

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM