# #firebase #flutter #google-cloud-firestore
Вопрос:
Когда я открываю вкладку, на секунду возникает эта ошибка. Потом это проходит, как мне решить эту проблему? Я предполагаю, что для создания значения длины требуется время?
class rideList extends StatefulWidget {
@override
_rideListState createState() => _rideListState();
}
class _rideListState extends State<rideList> {
@override
Widget build(BuildContext context) {
final rides = Provider.of<List<RideDetails>>(context);
int count = 0;
if (rides.length != null) {
return ListView.builder(
itemCount: rides.length,
itemBuilder: (context, index) {
print('Rides: ${rides.length}');
if (rides[index].limit == true) {
return RideTile(ride: rides[index]);
}
else if(rides[index].limit == false){
count;
if(rides.length == count){
print('no rides');
return Center(child: Text('No rides posted yet. Be the first to post a ride!'));
}
else{
return SizedBox(height: 20.0,);
}
}
return SizedBox(height: 20.0,);
},
);
}
}
}
Ответ №1:
Если rides
это всегда список (), который может быть равен нулю,
вы должны использовать условное => if (rides != null)
вместо => > if (rides.length != null)
.
Ошибка возникает из-за того, что вы должны сначала проверить, не является ли rides
она нулевой, прежде чем вызывать свойство length
.