Обрабатывать события в DART
Я новичок в DART. Я прочитал обзор языка и проверил пример кода в редакторе DART. До сих пор я не мог найти, как обрабатывать события в DART. Например, onclick="call_dart_method()".
Как мы можем обрабатывать события в DART?
2 ответа
Решение
Это не то, как вы делаете это на Dart Check здесь, в разделе События: http://www.dartlang.org/articles/improving-the-dom/
elem.onClick.listen(
(event) => print('click!'));
Кроме того, вы можете обнаружить, что возможность опционально объявлять наши типы переменных делает работу с событиями в Dart блаженством.
import 'dart:html';
import 'dart:math';
class MyApplication {
MyApplication() {
CanvasElement screenCanvas;
CanvasRenderingContext2D screen;
final int WIDTH = 400, HEIGHT = 300;
Random rand = new Random();
screenCanvas = new CanvasElement();
screenCanvas
..width = WIDTH
..height = HEIGHT
..style.border = 'solid black 1px';
screen = screenCanvas.getContext('2d');
document.body.nodes.add(screenCanvas);
screenCanvas.onClick.listen((MouseEvent me) {
int
r = rand.nextInt(256),
g = rand.nextInt(256),
b = rand.nextInt(256);
double a = rand.nextDouble();
screen
..save()
..translate(me.offsetX, me.offsetY)
..rotate(rand.nextDouble() * PI)
..fillStyle = 'rgba($r,$g,$b,$a)'
..fillRect(-25, -25, 50, 50)
..restore();
});
}
}
void main() {
new MyApplication();
}