2
DartのMyComponentを初期化するには、HttpRequestをサーバに送信する必要があるとします。同期してオブジェクトを構築し、応答が返るまで '実際の'初期化を延期することは可能ですか?Dartのコンポーネントコンストラクタから非同期メソッドを呼び出す
以下の例では、_init()関数は "done"が出力されるまで呼び出されません。これを修正することは可能ですか?
import 'dart:async';
import 'dart:io';
class MyComponent{
MyComponent() {
_init();
}
Future _init() async {
print("init");
}
}
void main() {
var c = new MyComponent();
sleep(const Duration(seconds: 1));
print("done");
}
出力:
done
init
静的非同期メソッドを使用できますか? – Ganymede