gpt4 book ai didi

SwiftUI 更改环境对象在同一 View 中重新创建观察对象

转载 作者:行者123 更新时间:2023-12-05 04:46:25 25 4
gpt4 key购买 nike

所以,我有几个步骤,最后一个包含 EnvironmentObjectObservedObject。问题是,当我尝试修改 EnvironmentObject (lane 68) 时,它会重新创建 ObservedObject。任何人都可以解释为什么会这样吗?有什么解决方案可以使我的 ObservedObject 保持原始状态吗?

据我所知,可以将 ObservedObject 更改为 StateObject,但我使用的是 iOS 13+,所以...我需要其他解决方案。

enter image description here

最佳答案

第 47 行 - body 被重新评估,因此创建了 ObservedStuff 的新实例,因此将其作为属性并传入,例如

struct TestView_A: View {
...
private let model = ObservedStuff()

var body: some View {
NavigationLink(destination: TestView_B(viewModel: self.model) ...
}
}

关于SwiftUI 更改环境对象在同一 View 中重新创建观察对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68799895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com