生成函数返回空错误被抛出

A build function returned null error being thrown

我找到了一些解决这个问题的帖子,我尝试使用他们的解决方案但没有成功。

我是 Flutter 的新手,所以我需要别人的建议。

调试面板中的错误信息如下:

A build function returned null.

The offending widget is: StreamBuilder<List<Event>>
Build functions must never return null.

To return an empty space that causes the building widget to fill available room, return "Container()". To return an empty space that takes as little room as possible, return "Container(width: 0.0, height: 0.0)".

The relevant error-causing widget was: 
  StreamBuilder<List<Event>> file:///C:/Users/nkane/AndroidStudioProjects/tonnah/lib/screens/appointment_calendar.dart:166:11

这是从第 166 行开始的代码:

StreamBuilder(
            //stream: _firestoreService.getEventStream(_selectedDay),
            stream: _db.collection('agency').doc(globals.agencyId).collection('event')
          .where('eventDate', isGreaterThanOrEqualTo: Timestamp.fromDate(_selectedDay))
                .snapshots().map((snapshot) => snapshot.docs
          .map((document) => Event.fromFirestore(document.data()))
          .toList()),
            builder: (context, snapshot) {
              if (snapshot.hasData) {
                List<Event> snapData;
                return snapData = snapshot.data;
                _eventsStream = snapData;
                _eventsMap = convertToMap(snapData);
                //_selectedEventsMap = _eventsMap[_selectedDay] ?? [];
                return _buildTableCalendar();
              }
            },
          ),

我该如何解决这个问题?我知道我需要一个“return”,但我该如何使用它呢?

您只需要 return 一个视图,而数据是 fetching/loading。在这种情况下,我使用了 CircularProgressIndicator 小部件。

StreamBuilder(
  stream: ...,
  builder: (context, snapshot) {
    if(snapshot.hasData){
      return build_your_widget;
  } else 
      return CircularProgressIndicator();
  }
)