Size: a a a

Flutter Developers — русскоговорящее сообщество

2019 September 06

ОС

Олжас Сулеймен in Flutter Developers — русскоговорящее сообщество
Надо после
источник

Ю

Юрий in Flutter Developers — русскоговорящее сообщество
initvalue чтоб избежать нул и там еще по приходу проверять
источник

T

Tim in Flutter Developers — русскоговорящее сообщество
Резюмирую:
1) Есть репозиторий, который выступает посредником между базой и сервисом.
2) У репозитория есть синхронные методы, которые обращаются к бд и оттуда отдают стрим.
3) бд, в свою очередь, инициализируется асинхронно.
Вопрос: где нужно дожидаться окончания футуры с инициализацией бд?
источник

Ю

Юрий in Flutter Developers — русскоговорящее сообщество
а как оно работает так хитро синхроном с базой?
источник

ND

Nikita Dauhashei in Flutter Developers — русскоговорящее сообщество
Tim
Резюмирую:
1) Есть репозиторий, который выступает посредником между базой и сервисом.
2) У репозитория есть синхронные методы, которые обращаются к бд и оттуда отдают стрим.
3) бд, в свою очередь, инициализируется асинхронно.
Вопрос: где нужно дожидаться окончания футуры с инициализацией бд?
Просто вызови init в main (пока будет инит базы - пользователь будет видеть launchscreen)
источник

T

Tim in Flutter Developers — русскоговорящее сообщество
Если прокидывать футуру с инициализацией вверх, то при инициализации сервиса также придется делать асинхронный метод, который будет ждать рерпозиторий и, соответственно, так до самого верха вызовов вплоть до bloc'а
источник

T

Tim in Flutter Developers — русскоговорящее сообщество
Nikita Dauhashei
Просто вызови init в main (пока будет инит базы - пользователь будет видеть launchscreen)
Тоже вариант, спасибо
источник

T

Tim in Flutter Developers — русскоговорящее сообщество
Юрий
а как оно работает так хитро синхроном с базой?
А оно возвращает синхронно стрим и под капотом делает свои грязные дела асинхронно и отправляет в стрим
источник

ОС

Олжас Сулеймен in Flutter Developers — русскоговорящее сообщество
Кинь в гист виджет
источник

ND

Nikita Dauhashei in Flutter Developers — русскоговорящее сообщество
Tim
Тоже вариант, спасибо
Это лучшее, чтобы не городить костыли
источник

AY

Aleksandr Yurkovskiy in Flutter Developers — русскоговорящее сообщество
Tim
Угу, но ведь метод, который отдает стрим, обращается к БД, которая должна успеть инициализироваться асинхронно
Можно отдать стрим
А к бд обратиться после с await
источник

T

Tim in Flutter Developers — русскоговорящее сообщество
Aleksandr Yurkovskiy
Можно отдать стрим
А к бд обратиться после с await
Под капотом пакета floor так и делается, думаю
источник

EC

Evgeny Cherkasov in Flutter Developers — русскоговорящее сообщество
Tim
Резюмирую:
1) Есть репозиторий, который выступает посредником между базой и сервисом.
2) У репозитория есть синхронные методы, которые обращаются к бд и оттуда отдают стрим.
3) бд, в свою очередь, инициализируется асинхронно.
Вопрос: где нужно дожидаться окончания футуры с инициализацией бд?
При старте приложения инициализировать бд
источник

T

Tim in Flutter Developers — русскоговорящее сообщество
Nikita Dauhashei
Это лучшее, чтобы не городить костыли
Да, выглядит разумнее всего
источник

T

Tim in Flutter Developers — русскоговорящее сообщество
Evgeny Cherkasov
При старте приложения инициализировать бд
+, спасибо
источник

EC

Evgeny Cherkasov in Flutter Developers — русскоговорящее сообщество
а, уже написали
источник

T

Tim in Flutter Developers — русскоговорящее сообщество
))
источник

T

Tim in Flutter Developers — русскоговорящее сообщество
Класть в main FutureBuilder, верно?
источник

ОС

Олжас Сулеймен in Flutter Developers — русскоговорящее сообщество
Нет, это если вы в билде виджета вызываете
источник

ОС

Олжас Сулеймен in Flutter Developers — русскоговорящее сообщество
Там просто авайт
источник