4

クラス future から 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 を間違った方法で使用していませんか?

私の2番目の質問は

import 'package:async/async.dart';

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

パッケージから非同期ライブラリをインポートしようとすると、コンパイラ メッセージが表示されるのはなぜですか

例外発生: TypeError
未定義クラス 'Future' のオブジェクト

私はここで何を間違っていますか?

4

1 に答える 1

10

1) Future を渡すのではなくFuture.sync()、すぐに実行されるクロージャーを渡します。

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

2) async は内部パッケージです。を使用してインポートします

import 'dart:async';

pubspec.yaml内部パッケージは常に利用できるため、依存関係に追加する必要はありません。別の import ステートメントはそれに関連しています。

于 2014-06-18T06:54:15.887 に答える