我正在通过以下方式从事件存储库中获取事件。现在,在初始情况下,我不需要进度指示器,因为我正在从snapshot.hasData条件在UI上处理它。在刷新条件下,我想显示进度指示器或小吃栏或基于isBusy条件的某种叠加层,以使用户知道数据正在刷新。我不想使用publishsubject,因为我希望UI在刷新时显示数据。但是streambuilder不会更新,除非更改主题,但此处显然没有更改。而snapshot.connectionState仅返回connectionstate.active。有什么方法可以正确实现以下逻辑?
class EventBloc {
final EventRepository _repository = EventRepository();
final BehaviorSubject<EventResponse> _subject =
BehaviorSubject<EventResponse>();
bool _isBusy = false;
getEvents() async {
_isBusy=true;
EventResponse response = await _repository.getEvents();
_subject.sink.add(response);
_isBusy=false;
}
BehaviorSubject<EventResponse> get subject => _subject;
bool get isBusy => _isBusy;
}