前提
Firebaseで顧客名をDropdownButtomで表示しようとしています。以下のコードのExpandedの行から数えて6行目の"builder:(context, snapshot){"の最後の波括弧にアラートがついて、修正方法が分かりません。
dart
1//省略 2Expanded( 3 child: StreamBuilder<QuerySnapshot>( 4 stream: FirebaseFirestore.instance 5 .collection('customers') 6 .orderBy('date') 7 builder: (context, snapshot) { 8 if (snapshot.hasData) { 9 if (snapshot.data != null) { 10 final List<DocumentSnapshot> documents = 11 snapshot.data!.docs; 12 final list = <String>[]; 13 for (var value in documents) { 14 list.add(value['name']); 15 } 16 list.toSet().toList(); 17 return DropdownButton<String>( 18 value: "名前", 19 items: list 20 .map((String list) => DropdownMenuItem( 21 value: list, child: Text(list))) 22 .toList(), 23 onChanged: (String? value) { 24 setState(() { 25 tagText = value!; 26 }); 27 }, 28 ); 29 } 30 } 31 }), 32), 33//省略
警告文は以下の通りです。
The body might complete normally, causing 'null' to be returned, but the return type, 'Widget', is a potentially non-nullable type. Try adding either a return or a throw statement at the end.
実現したいこと
警告を外したいです。
よろしくお願いいたします。
試したこと
nullに関するwebページを見て!や?をつけていじってみましたが改善されませんでした。
補足情報
yamlファイルはこちらです。
yaml
1name: XXXX 2description: A new Flutter project. 3 4environment: 5 sdk: ">=2.17.6 <3.0.0" 6 7dependencies: 8 flutter: 9 sdk: flutter 10 cupertino_icons: ^1.0.2 11 firebase_core: ^1.17.1 12 firebase_crashlytics: ^2.8.1 13 firebase_analytics: ^9.1.8 14 flutter_inappwebview: ^5.3.2 15 firebase_auth: ^3.3.8 16 cloud_firestore: ^3.4.3 17 provider: ^5.0.0 18 flutter_riverpod: ^1.0.4 19 get: ^4.6.5 20 hive: ^2.2.3 21 hive_flutter: ^1.1.0 22 hive_generator: ^1.1.3 23 build_runner: ^2.2.0 24 flutter_slidable: ^2.0.0 25 sqflite: ^2.0.3 26 27dev_dependencies: 28 flutter_test: 29 sdk: flutter

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。