вызывается snackbar
@ Compose
val auth = viewModel.loginResponse.observeAsState()
auth.value?.let {
when (it) {
is Resource.Failure -> {
coroutineScope.launch {
snackbarHostState.showSnackbar(it.errorText)
}
}
}
}
ViewModel
private val _loginResponse: MutableLiveData<Resource<LoginResponse>> = MutableLiveData()
val loginResponse: LiveData<Resource<LoginResponse>>
get() = _loginResponse
P.s. вложенность такая Main -> HorizontalPager -> AuthSmsPage (вот тут обсервится livedata)
Надо юзать SharedFlow + LaunchedEffect У тебя постоянно сейчас state Failure, а надо один раз пульнуть эвент
это я сократил для читабельности ) намеренно вызываю failure -> появляется snackbar (все ок) затем листаю pager туда сюда -> постоянно появляется snackbar =( про SharedFlow + LaunchedEffect сейчас почитаю, спс =)
Обсуждают сегодня