Oprócz odpowiedzi Alexandre'a, konkretny przykład w kodzie będzie wyglądać następująco:
import 'dart:html';
void main() {
var listener = (e) => print("Moved");
var element = query("#text");
var streamsub = element.onMouseMove.listen(listener); // <--- add the listener
var reverseText= (Event event) {
var text = query("#text").text;
var buffer = new StringBuffer();
for (int i = text.length - 1; i >= 0; i--) {
buffer.add(text[i]);
}
query("#text").text = buffer.toString();
streamsub.cancel(); // <---- stop listening
};
element
..text = "Click me!"
..onClick.listen(reverseText);
}
Drukuje „moved” podczas przesuwania myszy nad „Click Me!” tekst (ze standardowej próbki dart). Po kliknięciu zatrzymuje się.