在SwiftUI中是否可以有一个全局状态变量?能够让我的所有视图都订阅相同的状态将是很好的。有什么理由不这样做吗?
当我尝试使用@State
装饰器声明全局变量时,swift编译器崩溃了(测试版软件,对吗?)。
答案 0 :(得分:0)
@State仅用于管理局部变量。您要寻找的包装器是@EnvironmentObject
。您可以将其用于主题颜色,方向,已订阅或未订阅的用户等。
答案 1 :(得分:0)
var globalBool:Bool = false { didSet {
var body: some View {
VStack {
Text("State: \(self.bool.description)") // This will never update
Button("Toggle") { self.bool.toggle() }
}
}
}
struct GlobalUser:查看{ @Binding var bool:布尔
import pandas as pd
import numpy as np
master = pd.read_csv("/home/sean/Desktop/master.csv", index_col=0)
windows = sorted(set(master['Position']))
g = master.groupby("Position")
master.query("Position == 24386700").shape
g = master.query("CNV == 2").groupby("Position")
p = g.Normalised_coverage.mean() / 2
}
... 静态var预览:某些视图{ GlobalUser(bool:Binding(getValue:{globalBool},setValue:{
globalBool = $ 0}))
}