在处理事件的DART(Handle events in DART)

2019-09-16 14:54发布

我是新来的DART。 我读的语言概述,并在DART编辑检查示例代码。 到目前为止,我无法找到如何处理DART事件。 为例如的onclick = “call_dart_method()”。

我们该如何处理在DART事件?

Answer 1:

这不是你怎么做的飞镖入住这里,下节活动: http://www.dartlang.org/articles/improving-the-dom/

elem.onClick.listen(
    (event) => print('click!'));


Answer 2:

此外,您可能会发现,能够选择性地宣布我们的变量类型使得在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();
}


文章来源: Handle events in DART