File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -15,12 +15,19 @@ public struct ObservedViewModel<ViewModel: KMMViewModel>: DynamicProperty {
1515
1616 @ObservedObject private var observableObject : ObservableViewModel < ViewModel >
1717
18- /// The underlying `KMMViewModel` referenced by the `ObservedViewModel`.
19- public var wrappedValue : ViewModel { observableObject. viewModel }
20-
2118 /// A projection of the observed `KMMViewModel` that creates bindings to its properties using dynamic member lookup.
2219 public var projectedValue : ObservableViewModel < ViewModel > . Projection
2320
21+ /// The underlying `KMMViewModel` referenced by the `ObservedViewModel`.
22+ public var wrappedValue : ViewModel {
23+ get { observableObject. viewModel }
24+ set {
25+ let observableObject = observableViewModel ( for: newValue)
26+ self . observableObject = observableObject
27+ self . projectedValue = ObservableViewModel . Projection ( observableObject)
28+ }
29+ }
30+
2431 @available ( * , deprecated)
2532 public init ( _ projectedValue: ObservableViewModel < ViewModel > . Projection ) {
2633 self . observableObject = projectedValue. observableObject
You can’t perform that action at this time.
0 commit comments