Во Flutter Как отобразить результат StreamBuilder в Drawer
У меня есть StreamBuilder в теле моего виджета
body: RefreshIndicator(
onRefresh: () => _sheetDetailBloc.fetchSheetDetail(
widget.selectedSheet, widget.selectedSheetTitle),
child: StreamBuilder<ApiResponse<Sheet>>(
stream: _sheetDetailBloc.sheetDetailStream,
builder: (context, snapshot) {
if (snapshot.hasData) {
switch (snapshot.data.status) {
case Status.LOADING:
return Loading(loadingMessage: snapshot.data.message);
break;
case Status.COMPLETED:
return ShowSheetDetail(displaySheet: snapshot.data.data);
break;
case Status.ERROR:
return Error(
errorMessage: snapshot.data.message,
onRetryPressed: () => _sheetDetailBloc.fetchSheetDetail(
widget.selectedSheet, widget.selectedSheetTitle),
);
break;
}
У меня есть ящик на панели приложений, где я хочу отобразить contactNoToDisp и emailIDToDisp, которые появятся после асинхронного вызова как snapshot.data.data.contactNo и snapshot.data.data.emailID.
код ящика ниже:
endDrawer: Drawer(
child: ListView(
children: <Widget>[
ListTile(
title: Text("First Item"),
),
ListTile(title: Text(contactNoForDisp)),
ListTile(title: Text(emailIDForDisp)),
],
)),
Я не уверен, как обновить две переменные класса contactNoToDisp и emailIDToDisp после возврата future / asyc, чтобы то же самое можно было отобразить в ящике