我正在使用环境对象将视图模型传递给视图。为了预览不同的状态,如何在将环境对象传递到预览之前更改环境对象中的某些属性?
我想做这样的事情,但这不起作用:
struct view_Previews: PreviewProvider {
@EnvironmentObject static var authenticationViewModel: AuthenticationViewModel {
get {
let v = authenticationViewModel
v.showResendCodeTimer = true
return v
}
}
static var previews: some View {
SomeView().environmentObject(authenticationViewModel)
}
}
Run Code Online (Sandbox Code Playgroud)
这是可能的方法
static var previews: some View {
Group {
SomeView().environmentObject({ () -> AuthenticationViewModel in
let v = AuthenticationViewModel()
v.showResendCodeTimer = true
return v
}())
SomeView().environmentObject({ () -> AuthenticationViewModel in
let v = AuthenticationViewModel()
v.showResendCodeTimer = false
return v
}())
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
537 次 |
| 最近记录: |