【发布时间】:2025-12-17 21:00:01
【问题描述】:
我有一个从父视图获得绑定的子视图,它控制应用的侧边栏菜单。当我单击按钮切换 showSidebar 并打开菜单时,我的 vm 被重新创建,因为视图被重新渲染?有没有办法在不影响视图模型的情况下做到这一点?
struct OnboardingView: View {
@Environment (\.presentationMode) var presentationMode
@ObservedObject private var vm: OnboardingViewModel
@State private var filtering = false
@Binding var showSidebar: Bool
init(showSidebar: Binding<Bool>) {
self._showSidebar = showSidebar
self.vm = OnboardingViewModel()
}
【问题讨论】: