KotlinLeaner
01/17/2023, 1:30 PMLaunchEffect
key triggers.
LaunchedEffect(key1 = isEnableState, key2 = viewModel.uiState) {
viewModel.scanState(bluetoothAdapter)
}
when first composition isEnableState
and viewModel.uiState
both will trigger twice and call viewModel.scanState(bluetoothAdapter)
.
isEnableState
is a Boolean
type and viewModel.uiState
is sealed class of UI types.
var uiState by mutableStateOf<UIState>(UIState.Initial)
private set
var isEnableState by mutableStateOf(false)
private set
So how can we handle idiomatic way to avoid duplicate calls?
ThanksZach Klippenstein (he/him) [MOD]
01/18/2023, 4:24 PMKotlinLeaner
01/18/2023, 4:25 PMZach Klippenstein (he/him) [MOD]
01/18/2023, 4:57 PMKotlinLeaner
01/18/2023, 4:58 PMZach Klippenstein (he/him) [MOD]
01/18/2023, 5:17 PMKotlinLeaner
01/18/2023, 6:04 PMZach Klippenstein (he/him) [MOD]
01/18/2023, 6:12 PMKotlinLeaner
01/18/2023, 6:33 PM