Swift 更新ObserveObject值将取消视图
在我的应用程序中,我使用Swift 更新ObserveObject值将取消视图,swift,swiftui,combine,navigationview,Swift,Swiftui,Combine,Navigationview,在我的应用程序中,我使用EnvironmentObject存储数据对象和用户配置文件,我使用它通过各种设置在整个应用程序中进行更改 我还有一个用于在视图之间传递数据的ViewModelobserveobject 我试图在应用程序环境中的导航视图的子视图中,将数据值从一个可观察对象设置为另一个 但是,在执行以下操作时,它会一直关闭到根NavigationView。有人知道为什么会这样吗 可观察对象 class UserStore : ObservableObject { var didCh
EnvironmentObject
存储数据对象和用户配置文件,我使用它通过各种设置在整个应用程序中进行更改
我还有一个用于在视图之间传递数据的ViewModel
observeobject
我试图在应用程序环境中的导航视图的子视图中,将数据值从一个可观察对象设置为另一个
但是,在执行以下操作时,它会一直关闭到根NavigationView
。有人知道为什么会这样吗
可观察对象
class UserStore : ObservableObject {
var didChange = PassthroughSubject<Void, Never>()
//MARK: Properties
@Published var profile: User? {didSet{didChange.send() }}
@Published var editingNote: Note? {didSet{didChange.send() }}
}
class NoteViewModel: ObservableObject {
var didChange = PassthroughSubject<Void, Never>()
@Published var note: Note? {didSet{didChange.send() }}
}
你会准备你的情况的最小可复制的例子吗?你会准备你的情况的最小可复制的例子吗?
@EnvironmentObject var userStore: UserStore
@ObservedObject var model: NoteViewModel
var body: some View {
VStack {
Button(action: {
self.userStore.editingNote = self.model.note
}) {
Text("Edit note")
}
}
}