не забанен, и что-то нашел, но мало ли есть примеры получше)
Каким образом это может быть вбросом?
В чём проблема? Подписываешься на flow, меняешь state и кидаешь в View.
Проблем нет, я попросил пример
Ну как же так, молодой пользователь интернета не знает что такое вбросы? Как вы выживаете то.
Я делаю сейчас что-то подобное Здесь используется MVIKotlin. В терминах этой либы, в intent executor подписываешься и кидаешь результат. Потом он обработается в медиаторе, поменяется state и он дальше прилетит в view. https://github.com/PavelSidyakin/ChatSample/blob/master/app/src/main/java/com/example/chatsample/chatlist/store/ChatListIntentExecutorImpl.kt private suspend fun handleActionLoadList() = coroutineScope { chatDataSource.observeChatList() // Flow .map { pagingData -> pagingData.map { convertChatInfo2ChatListItem(it) } } .cachedIn(this) .collectLatest { pagingData: PagingData<ChatListItem> -> dispatch(ChatListStateChanges.ListChanged(pagingData)) dispatch(ChatListStateChanges.RefreshStateChanged(false)) } }
Есть мое старое решение, ему уже год https://github.com/roixa/RoixCleanMvi
Обсуждают сегодня