4

当我尝试使用未来类中的future.sync时

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

void main() {
    var fur3 = new Future<int>(() => 45);
    int z = Future.sync(fur3);
    print(z);
}

我收到了错误信息

打破异常:NoSuchMethodError 类型的对象

我是否以错误的方式使用future.sync?

我的第二个问题是

import 'package:async/async.dart';

void main() {
  var fur1 = new Future<int>(() => 45);
    fur1.then((value) {
      return value;
    }).catchError((err) => print('catchError1: ${err}'));
}

为什么当我尝试从包中导入异步库时,我得到了编译器消息

打破异常:类型错误
未定义类'Future'类型的对象

我在这里做错了什么?

4

1 回答 1

10

1)您不会将未来传递Future.sync()给要立即执行的闭包。

Future z = new Future.sync(() => print('bla'));

2) async 是一个内部包。您使用导入它

import 'dart:async';

内部包不需要添加到pubspec.yaml依赖项中,因为它们始终可用。不同的导入语句与此有关。

于 2014-06-18T06:54:15.887 回答