2

この関数を Javascript から Dart にどのように変換しますか?

function addEvtListener(Element el, evtName, fn) {
    return el.addEventListener ? el.addEventListener(evtName, fn, false) : el.attachEvent('on' + evtName, fn);
}

主な問題は、イベント名を動的にすることです。私は明らかに呼び出すことができます:

el.onClick.listen((event) => fn(event));

evtNameクリック イベントの場合。しかし、Dartにこのような方法はありますか?

el.on("click").listen(event) => fn(event));
4

2 に答える 2

3

Events クラスのドキュメントには、名前でイベントをリッスンするさまざまな方法の概要が記載されています: http://api.dartlang.org/docs/releases/latest/dart_html/Events.html

両方を実行できることがわかります。

new EventStreamProvider(evtName).forTaget(el).listen(fn);

また

el.on[evtName].listen(fn);
于 2013-06-22T23:11:53.950 に答える
2

You can use :

(const EventStreamProvider<Event>(evtName)).forTarget(el).listen((e) => fn(e));
于 2013-06-22T21:28:34.730 に答える