Junior — Middle
¿Qué nuevas herramientas de monitoreo y gestión del estado en SwiftUI se introdujeron después de la versión iOS 13?
sobes.tech AI
Respuesta de la IA
Después de iOS 13, SwiftUI añadió nuevas herramientas para monitorear y gestionar el estado, que amplían las capacidades de la programación reactiva:
- @StateObject — para crear y gestionar el ciclo de vida de objetos ObservableObject dentro de una vista, garantizando que el objeto se cree una sola vez.
- @ObservedObject — para suscribirse a cambios en objetos ObservableObject externos.
- @EnvironmentObject — para pasar datos a través de la jerarquía de vistas sin necesidad de pasarlos explícitamente.
- @AppStorage — para enlazar convenientemente el estado con UserDefaults.
- @SceneStorage — para guardar el estado dentro del ciclo de vida de la escena.
Estas propiedades permiten rastrear cambios en los datos de manera eficiente y actualizar la interfaz automáticamente sin código adicional.
Ejemplo de uso de @StateObject:
class ViewModel: ObservableObject {
@Published var count = 0
}
struct ContentView: View {
@StateObject private var viewModel = ViewModel()
var body: some View {
VStack {
Text("Count: \(viewModel.count)")
Button("Increment") {
viewModel.count += 1
}
}
}
}