Да, в моём проекте использовались как BLoC, так и Cubit для управления состоянием, в зависимости от сложности логики.
BLoC применялся в сценариях, требующих обработки множества событий и выполнения асинхронных операций с возможностью отслеживания промежуточных состояний (загрузка, ошибка):
LoginEvent, RegisterEvent, LogoutEvent. Состояния включали AuthInitial, AuthLoading, Authenticated, Unauthenticated, AuthError.Пример использования BLoC для получения данных:
dart
Cubit использовался для более простых случаев управления состоянием, где основное взаимодействие сводится к изменению текущего состояния без сложной обработки событий:
Пример использования Cubit для переключения состояния:
dart
Выбор между BLoC и Cubit определялся сложностью логики и потребностью в обработке различных событий. BLoC — для многогранной логики с потоками событий и состояний, Cubit — для прямого изменения состояния.