так только если брать значение из state, а если из mutableStateOf то все ок
Скорее всего, вы обновляете стейт асинхронно. Нужно из коллбека сразу синхронно выставлять стейт
Стейт надо прямо в компоненте держать и обновлять сразу
Скорее всего, происходит что-то типа такого: TextField( modifier = Modifier.fillMaxWidth(), value = state.text, onValueChange = { value -> scope.launch { viewModel.setText(value) } }, ) Т.е. из коллбека пуляете новое значение куда-то, оно обрабатывается асинхронно или шедулится. А потом прилетает в TextField. Надо как-то так: var text by remember(state.text) { mutableStateOf(state.text) } LaunchedEffect(text) { viewModel.setText(value) } TextField( modifier = Modifier.fillMaxWidth(), value = text, onValueChange = { value -> text = value }, )
Обсуждают сегодня