Abhimanyu
07/20/2023, 2:53 AMLaunchedEffect and remember?
LaunchedEffect uses remember internally.
@Composable
@NonRestartableComposable
@OptIn(InternalComposeApi::class)
fun LaunchedEffect(
key1: Any?,
block: suspend CoroutineScope.() -> Unit
) {
val applyContext = currentComposer.applyCoroutineContext
remember(key1) { LaunchedEffectImpl(applyContext, block) }
}Abhimanyu
07/20/2023, 2:54 AMLaunchedEffect ,
1. coroutine scope
2. Returns the calculated data.Abhimanyu
07/20/2023, 2:56 AMblock updates another mutable state in the Composable,
should I use remember or LaunchedEffect ?Abhimanyu
07/20/2023, 2:56 AM@Composable
fun Test(
para1: Int,
) {
var result = remember {
mutableStateOf("")
}
remember(para1) {
aMethodsWithCallbacks() { updatedResult: String ->
result = updatedResult
}
}
return result
}
vs
@Composable
fun Test(
para1: Int,
) {
var result = remember {
mutableStateOf("")
}
LaunchedEffect(para1) {
aMethodsWithCallbacks() { updatedResult: String ->
result = updatedResult
}
}
return result
}Chris Sinco [G]
07/20/2023, 3:26 AMAbhimanyu
07/20/2023, 3:46 AMChris Sinco [G]
07/20/2023, 3:54 AMmattinger
07/21/2023, 4:28 AM