Невозможно услышать новую ценность от Bloc Flutter
Я использую библиотеку flutter_bloc для управления состоянием приложения, когда я нажимаю кнопку в другом классе, состояние изменяется в классе блока, но не могу прослушивать BlocProvider в методе сборки.
BlocBuilder<AppBarBloc, bool>(
builder: (context, isEnabled) {
print('state detected');
return Container();
},)
//in main.dart were providing the Blocs
MultiBlocProvider(
providers: [
BlocProvider<PagesBloc>(
builder: (BuildContext context) => PagesBloc(),
),
BlocProvider<AppBarBloc>(
builder: (BuildContext context) => AppBarBloc(),
),
],
child: Column(
children: <Widget>[
Expanded(
child: MaterialApp(
title: 'Flutter Demo',
initialRoute: '/',
onGenerateRoute: RouteGenerator.generateRoute,
theme: ThemeData(
primarySwatch: Colors.blue,
),
),
),
],
),
);
1 ответ
Возможно, вы можете проверить эту ссылку о слушателе блока.
Но как пример того, что вы можете сделать:
BlocBuilder<CustomerRegisterBloc, CustomerRegisterState>
buildCustomerRegisterOnState() {
return BlocBuilder<CustomerRegisterBloc, CustomerRegisterState>(
builder: (context, state) {
if (state is InitialCustomerRegisterState) {
return PersonalDataForm();
}
if (state is PasswordCustomerRegisterState) {}
if (state is PaymentFormCustomerRegisterState) {}
if (state is TermsCustomerRegisterState) {}
return Container();
},
);
}