Junior — Middle
¿Puedes explicar qué es un StateObject en el contexto del desarrollo?
sobes.tech AI
Respuesta de la IA
@StateObject — es una propiedad-envoltorio en SwiftUI, utilizada para crear y gestionar el ciclo de vida de un objeto que implementa el protocolo ObservableObject.
La tarea principal de StateObject es garantizar que el objeto se cree una sola vez y se conserve durante las nuevas renderizaciones de la vista en la que se declara. Esto es importante para almacenar estados que deben sobrevivir a las actualizaciones de la interfaz.
Ejemplo de uso:
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
}
}
}
}
Aquí, viewModel se crea una vez y mantiene el estado entre las actualizaciones de la interfaz.