Как связать BloC’и ? | Flutter приложение с нуля | ПЕРЕСБОРКА №12
Подписывайся на мой:
💬 Telegram
👨💻 GitHub (Куча кода на dart / Flutter)
🚀 Boosty
📸 Instagram
Мой курс по Flutter на YouTube:
Код из видео:
-----------------------------------------------
Кто-то говорит что BloC - трудно, кто-то говорит что легко. Но у всех рано или поздно возникает вопрос - как сделать взаимодействие двух Bloc’ов в приложении ?
Так как BloC довольно специфичный стейт-менеджмент - связь двух, а то и группы блоков воедино вызывает кучу вопросов.
В ролике я покажу вам два варианта связи логики из нескольких BloC компонентов. Первое решение, как всегда, простое. Второе уже интересней и немного сложней в понимании
Спойлер: подписка на стрим одного блока внутри другого - жесткий антипаттерн, за который нужно на перевоспитание в FlutterFlow отправлять...
Приятного просмотра!
-----------------------------------------------
Пересборка - это что?
Три года назад я решил сделать приложение на flutter для поиска рифм на Flutter. Опубликовал это как Android приложение в GooglePlay (PlayMarket)
Этот проект я сделал очень быстро, однако приложение начало обретать успех среди пользователей. В один месяц число загрузок перевалило за 60000 скачиваний. И сейчас, спустя несколько лет, я решил вернуться к этому проекту и переписать его с нуля!
В пересборке нас ожидает весь фарш настоящей разработки приложения. От создания проекта до публикации приложения в GooglePlay и AppStore.
Контент ожидает быть интересным, ведь помимо обычного создания приложения на камеру я хочу встроить и обучающие моменты. Ну все прямо как в Flutter уроки с нуля до профи для начинающих, только теперь мы пишем приложение реально)
-----------------------------------------------
00:00 - Вступление про BloC
00:39 - Что уже реализовано в приложении
00:56 - Зачем нам нужно подружить BLoC’и ?
01:52 - Как нельзя делать связь Bloc’ов ?
02:50 - Разбор документации Bloc-to-Bloc Communication
03:27 - Как правильно сделать связь двух Bloc?
03:42 - Объяснение подхода чистой архитектуры
04:33 - Простушка блока через BlocConsumer
06:53 - А это точно хорошая практика ? (Чекай доку)
07:36 - Пример посложней с неявным state у блока
09:07 - Добавление в избранное Bloc Repository Realm
09:49 - Фильтры в Realm query
10:33 - Новая DTO модель для избранных рифм
11:29 - Отдельный блок для страницы избранное
11:55 - Пишем логику добавления рифмы в избранные
15:04 - Пишем метод перевода модели в DTO
18:36 - Добавляем вызов event по нажатию на кнопку
21:48 - Читаем state в event handler внутри Bloc
23:58 - Тестируем добавление в избранное
24:28 - Чиним баг сохранения в LocalStorage
25:35 - Снова тестим, все работает
25:50 - Вывод списка избранных BlocBuilder
26:58 - Загрузка истории при открытии приложения
27:36 - Лайки не отображаются в списке
28:32 - Показ лайков - сравнение списка поиска и избранных
31:30 - Почему загружаем сразу весь список ?
32:12 - Модификация State блока через get
35:18 - Тестируем работу этой шизо-логики
35:47 - copyWith для перегрузки стейта
39:02 - Лайки заработали
39:02 - Правим логику репозитория
40:40 - Почему нельзя просто дергать два ивенты у двух блоков ?41:40 - Связь двух Bloc ов через Completer
46:00 - Итог выпуска про связь блоков
46:22 - В следующей серии
#программирование #flutter #dart
2 views
299
65
2 days ago 00:54:21 1
ДОЛЛАР УЖЕ 89 РУБ! ТРАМП СПАС РУБЛЬ? НАБИУЛЛИНА ИСПУГАЕТСЯ ПОДНЯТЬ СТАВКУ? ДЫРА В БЮДЖЕТЕ 1,7 ТРЛН
3 days ago 00:09:24 1
Ты забудешь слово РАБОТА. ChatGPT + Excel (Эксель + Чат ГПТ)