警告
Flutter初心者が応急処置的に取った方法です。
公式に推奨される方法ではないかもしれないためご注意ください。
サーバーのデータベースにあるデータを使ってProviderのクラスを初期化したかったのですが、async/awaitがコンストラクタでは直接使えないため、ハマりました。
最終的に、このようにして解決しました。
- 非同期処理を別の関数に切り出す。私はinit関数に処理を書きました。
init() async {
// ここに処理を書く
}
- コンストラクタ内で、このように書く
Future(() async {
await init();
notifyListeners();
});