Обрабатывать события в 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();
}
Другие вопросы по тегам