Junior — Middle
W jakich przypadkach zaleca się stosowanie właściwości @ObservedObject w SwiftUI do śledzenia zmian danych?
sobes.tech AI
Odpowiedź od AI
Właściwość @ObservedObject w SwiftUI jest zalecana, gdy widok (View) zależy od zewnętrznego obiektu, który implementuje protokół ObservableObject i może zmieniać swoje dane. Pozwala to na automatyczne odświeżanie widoku przy zmianie danych w obiekcie.
Stosuje się ją, jeśli:
- Obiekt jest tworzony poza bieżącym widokiem i jest mu przekazywany.
- Konieczne jest śledzenie zmian danych, które mogą zachodzić poza bieżącym widokiem.
Przykład:
class UserSettings: ObservableObject {
@Published var score = 0
}
struct ScoreView: View {
@ObservedObject var settings: UserSettings
var body: some View {
Text("Score: \(settings.score)")
}
}
Tutaj ScoreView zaktualizuje się, gdy score w UserSettings się zmieni, jeśli obiekt został przekazany do widoku spoza niego.