在没有显式访问器的情况下监听ElementList上的事件 [英] Listen to events on ElementList with no explicit accessor

查看:155
本文介绍了在没有显式访问器的情况下监听ElementList上的事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以监听在ElementList上没有显式访问器的事件?



例如,我可以在单个元素上执行以下操作:

  this.querySelector(。js-popover-link)。on [on-tap]。listen((event){
print(Event Triggered);
});但是,以下是不可能在从querySelectorAll返回的ElementList:


b

  this.querySelectorAll(。js-popover-link)。 event){
print(Event Triggered);
});有没有一个简单的方法来做这个?



h2_lin>解决方案



  List< StreamSubscription> _subscriptions =< StreamSubscription> []; 

this.querySelectorAll(。js-popover-link)
.forEach((e){
_subscriptions.add(e.on [on-tap] .listen((event){
print(Event Triggered);
}));
});

...

  _subscriptions.forEach((s)=> s.cancel()); 


Is it possible to listen to events that have no explicit accessor on an ElementList?

For example I can do the following on a single element:

this.querySelector(".js-popover-link").on["on-tap"].listen((event) {
  print("Event Triggered");
});

However, the following is not possible on the ElementList returned from querySelectorAll:

this.querySelectorAll(".js-popover-link").on["on-tap"].listen((event) {
  print("Event Triggered");
});

Is there a simple way to do this?

解决方案

List<StreamSubscription> _subscriptions = <StreamSubscription>[];

this.querySelectorAll(".js-popover-link")
.forEach((e) {
  _subscriptions.add(e.on["on-tap"].listen((event) {
    print("Event Triggered");
  }));
});

...

_subscriptions.forEach((s) => s.cancel());

这篇关于在没有显式访问器的情况下监听ElementList上的事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆