[SwiftUI] @ObservedObject

yxxjxn·2023년 7월 10일

객체가 변화할때 그에 맞게 view를 변화 시켜주고자할 때 사용하는 어트리뷰트이다. 서브뷰에서 주로 사용한다.

class DataModel: ObservableObject {
    @Published var name = "Some Name"
    @Published var isEnabled = false
}


struct MyView: View {
    @StateObject private var model = DataModel()


    var body: some View {
        Text(model.name)
        MySubView(model: model)
    }
}


struct MySubView: View { // subview
    @ObservedObject var model: DataModel


    var body: some View {
        Toggle("Enabled", isOn: $model.isEnabled)
    }
}

https://developer.apple.com/documentation/swiftui/observedobject

profile
macos

0개의 댓글