[解決済み] タイプ 'List<dynamic>' はタイプ 'List<Widget>' のサブタイプではありません。
2022-04-27 13:48:29
質問
私はFirestoreの例からコピーしたコードのスニペットがあります。
Widget _buildBody(BuildContext context) {
return new StreamBuilder(
stream: _getEventStream(),
builder: (context, snapshot) {
if (!snapshot.hasData) return new Text('Loading...');
return new ListView(
children: snapshot.data.documents.map((document) {
return new ListTile(
title: new Text(document['name']),
subtitle: new Text("Class"),
);
}).toList(),
);
},
);
}
しかし、このようなエラーが発生します。
type 'List<dynamic>' is not a subtype of type 'List<Widget>'
ここで何が問題なのか?
解決方法は?
ここでの問題は、予期せぬ方法で型推論が失敗することです。 解決策としては、型引数を
map
メソッドを使用します。
snapshot.data.documents.map<Widget>((document) {
return new ListTile(
title: new Text(document['name']),
subtitle: new Text("Class"),
);
}).toList()
より複雑な回答は、型が
children
は
List<Widget>
のほうに情報が戻ってくることはありません。
map
を呼び出すことができます。 これは
map
の後に
toList
であり、クロージャの戻り値にタイプ・アノテーションを付ける方法がないためです。
関連
-
[解決済み】Firebase v3 updateProfile メソッド
-
[解決済み] エラーで終了しました。Gradle タスク assembleDebug は終了コード 1 で失敗しました。
-
[解決済み] Cloud FirestoreとFirebase Realtime Databaseの違いとは?
-
[解決済み】Firebase App '[DEFAULT]' が作成されていない - Flutter と Firebase で Firebase.initializeApp() を呼び出す。
-
[解決済み] Firebase Cloud MessagingのAPI KEYはどこにありますか?
-
[解決済み] プロバイダの取得ができない com.google.firebase.provider.FirebaseInitProvider
-
[解決済み] Firebaseメッセージング、Server Keyはどこで入手できますか?
-
[解決済み] Firebaseアプリにコラボレーターを追加する方法とは?
-
[解決済み] タイプ 'List<dynamic>' はタイプ 'List<Widget>' のサブタイプではありません。
-
[解決済み] Google Firestoreです。プロパティ値の部分文字列に対するクエリ (テキスト検索)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Firebase v3 updateProfile メソッド
-
[解決済み] エラーで終了しました。Gradle タスク assembleDebug は終了コード 1 で失敗しました。
-
[解決済み] Cloud FirestoreとFirebase Realtime Databaseの違いとは?
-
[解決済み】Firebase App '[DEFAULT]' が作成されていない - Flutter と Firebase で Firebase.initializeApp() を呼び出す。
-
[解決済み] Firebaseメッセージング、Server Keyはどこで入手できますか?
-
[解決済み] タイプ 'List<dynamic>' はタイプ 'List<Widget>' のサブタイプではありません。
-
[解決済み] どうしたら解決できますか?Error: Firebase プロジェクトのリストアップに失敗しました。詳細はfirebase-debug.logを参照してください。
-
[解決済み] HTTPエラー。401 android プロジェクトで firebase cloud の機能を設定する際に発生するエラー。
-
[解決済み] Firebaseストレージとアクセス制御・許可・オリジン
-
[解決済み] Java修飾語(abstract, final, public, static, etc.)の妥当な順番は?