Nivel 8
Nivel 8: efectos secundarios
Traducción al español en progresoEl contenido detallado de esta lección aún se está traduciendo. Mientras tanto, se muestra en inglés.
LaunchedEffect & Side Effects
Running code that isn't UI (timers, analytics, snackbars) inside Composable functions safely.
📚 Explicación
`LaunchedEffect` runs side effects (like API calls, timers) when a Composable enters composition or when keys change. `rememberCoroutineScope` provides a coroutine scope tied to the composition lifecycle for launching coroutines from callbacks.
Nota: La ejecución de código no está disponible para Android/Kotlin en el navegador. Usa Android Studio para ejecutar y probar la app.
@Composablefun AutoSaveScreen(onSave: () -> Unit) {// launchedEffect runs ONCE when the component enters the screen// or when 'key1' changes.LaunchedEffect(Unit) {delay(5000) // Wait 5 secondsonSave()}// rememberCoroutineScope allows launching coroutines from callbacks (like onClick)val scope = rememberCoroutineScope()val snackbarHostState = remember { SnackbarHostState() }Button(onClick = {scope.launch {snackbarHostState.showSnackbar("Saved!")}}) {Text("Manual Save")}}