видимо, я делаю здесь что-то принципиально неправильное... После входа в систему я отправляю новое логическое значение (T) в поток isAuthorized. StreamBuilder перезапускается и в конечном итоге выполняет правильную ветвь if-else, но по какой-то причине виджет входа остается отображаемым на экране?
class App extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'App',
theme: appTheme,
initialRoute: '/',
home: StreamBuilder<bool>(
stream: getIt.get<SessionBloc>().isAuthorized,
initialData: false,
builder: (context, snapshot) {
if (snapshot.data) {
return Home();
} else {
return Login();
}
},
),
routes: {
'/': (context) => Home(),
'/profile': (context) => Profile(),
'/login': (context) => Login(),
'/register': (context) => Register(),
},
),
);
}
}