是否有方法检查@Environmentobject是否存在swiftui

anauzrmj  于 2023-05-16  发布在  Swift
关注(0)|答案(1)|浏览(116)

我有一个视图层次结构,其中有时有可能没有解析@EnvironmentObject。有没有一种方法可以在访问其值之前检查这样的@EnvironmentObject是否存在?
类似下面的东西:

struct SampleView: View {
    @EnvironmentObject var someStateObj: SomeStateObjectType
    var body: some View {
        Button("Test") {
            // Line below will not work...
            if someStateObject != nil { /* Do Something */ }
        }
    }
}
nzk0hqpo

nzk0hqpo1#

如果您尝试在使用特定的@EnvironmentObject之前调试它是否存在,则以下测试可能很有用:

assert(type(of: someStateObject) == SomeStateObjectType.self)

相关问题