Sobes.tech
Junior — Middle

Poți explica ce este un StateObject în contextul dezvoltării?

sobes.tech AI

Răspuns de la AI

@StateObject — este o proprietate-ambalaj în SwiftUI, utilizată pentru a crea și gestiona ciclul de viață al unui obiect care implementează protocolul ObservableObject.

Sarcina principală a StateObject este de a asigura că obiectul va fi creat o singură dată și va rămâne în timpul re-renderizărilor View-ului în care este declarat. Acest lucru este important pentru stocarea stării care trebuie să supraviețuiască actualizărilor interfeței.

Exemplu de utilizare:

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
            }
        }
    }
}

Aici, viewModel este creat o dată și păstrează starea între actualizările interfeței.