小编Sha*_*uli的帖子

这个使用Streams的代码是错误的还是我应该提交错误?

我写的代码可能有点长,但是,我想知道是否有错误,所以我可以将它提交给dartbug.com.如果没有错误,我想知道我做错了什么.

代码的想法是将点的位置与网格同步(分别为Square类和Grid类).

Square.onPosChange是一个发送前一个位置的Stream.

当一个正方形被添加到Grid(Grid.add)时,就会对onPosChange进行订阅,它所做的就是改变Grid中正方形的位置; 首先它将它从前一个位置移除(只是指定null),然后将其分配给当前位置.

当我希望前一个位置为空时,我的测试失败了.现在下面是代码,并注意我认为可能是问题的注释行.

编辑:以防万一,这不是愚人节问题:P

import 'dart:async';
import 'package:unittest/unittest.dart';

void main() {
  test('grid',(){
    Square s = new Square(3, 5);
    Grid g = new Grid(10,10);
    g.add(s);
    expect(g._cols[3].squares[5], s);//pass
    s.x = 6;
    expect(g._cols[6].squares[5], s);//pass
    expect(g._cols[3].squares[5], isNull);//fails

  });
}

class Grid{
  List<GridCol> _cols;
  int w, h;
  Grid(this.w, this.h){
    _cols = new List<GridCol>.filled(w, new GridCol(h));
  }
  add(Square square){
    if(!isOut(square)){
      //add square to grid
      _cols[square.x].squares[square.y] = square;
      //listen to onPosChanged event stream
      square.onPosChanged.listen((Point previousPos){
        //remove from previous position
        _cols[previousPos.x].squares[previousPos.y] = null;
        //if is …
Run Code Online (Sandbox Code Playgroud)

dart

1
推荐指数
1
解决办法
115
查看次数

如何在 Dart 类上获得 ClassMirror?

如何使用 Mirrors API 获取 ClassMirror?我尝试使用顶级reflect()函数,但这需要一个类实例,而不是一个类作为参数。

dart dart-mirrors

1
推荐指数
1
解决办法
1368
查看次数

无法在Dart中访问父类的静态变量?

飞镖代码:

main() {
    print(PPP.name);
    print(CCC.name);
}

class PPP {
    static String name = "PPP";
}

class CCC extends PPP {
}
Run Code Online (Sandbox Code Playgroud)

它打印:

PPP
Unhandled exception:
No static getter 'name' declared in class 'CCC'.

NoSuchMethodError : method not found: 'name'
Receiver: Type: class 'CCC'
Arguments: [...]
Run Code Online (Sandbox Code Playgroud)

因此,无法在Dart中访问父类的静态变量吗?

dart

1
推荐指数
1
解决办法
832
查看次数

是否曾调用过WebComponent.removed()?

覆盖以下三个生命周期方法WebComponent:created(),inserted()和之后removed(),我可以看到前两个被一致地调用但removed()从未调用过.有什么特别的东西需要做才能removed()被调用吗?或者它根本就没有被称为?

dart dart-webui polymer

1
推荐指数
1
解决办法
86
查看次数

在 Dart 中导入库的顶级成员

以下 Python 语法的 Dart 等效项是什么,用于仅导入模块的一部分?这将导入刚刚urlopenurllib2模块。

from urllib2 import urlopen
Run Code Online (Sandbox Code Playgroud)

dart

1
推荐指数
1
解决办法
50
查看次数

标签 统计

dart ×5

dart-mirrors ×1

dart-webui ×1

polymer ×1