Junior — Middle
Pouvez-vous expliquer ce qu'est un StateObject dans le contexte du développement ?
sobes.tech IA
Réponse de l'IA
@StateObject — c'est une propriété-emballage dans SwiftUI, utilisée pour créer et gérer le cycle de vie d'un objet qui implémente le protocole ObservableObject.
La tâche principale de StateObject est de garantir que l'objet soit créé une seule fois et qu'il soit conservé lors des re-rendus de la vue dans laquelle il est déclaré. Cela est important pour stocker un état qui doit survivre aux mises à jour de l'interface.
Exemple d'utilisation:
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
}
}
}
}
Ici, viewModel est créé une fois et conserve l'état entre les mises à jour de l'interface.