lac*_*her 1 resolver ios swiftui appstorage
我正在@AppStorage与String财产一起使用。更改属性值时,视图会自动更新以反映预期的更改。然而,大多数时候它并没有持续存在UserDefaults。我觉得自己错过了一些东西,这让我感觉很愚蠢。还有其他人看到这个吗?
脚步:
环境:
非常简单的例子:
struct ContentView: View {
@AppStorage("token") var token: String = ""
var body: some View {
Form {
Section("Token") {
Text(token)
}
Section("Debug") {
Button("Update 01") {
token = "token-01"
}
Button("Update 02") {
token = "token-02"
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
这种典型的场景可能发生在开发阶段,但不会发生在生产阶段,因为用户没有像 Xcode 那样的停止按钮,并且 UserDefault 类在应用程序被系统终止之前将更改写入磁盘。
所以我们知道用户的默认数据库是异步写入磁盘的,因此当我们通过 Xcode 上的停止按钮停止应用程序时,我们对默认值所做的更改可能不会写入数据库,您可以通过停止应用程序自行尝试通过滑动,您的数据将在下次启动时存储,但当您从 Xcode 停止时,您的数据将不会被保存
| 归档时间: |
|
| 查看次数: |
1670 次 |
| 最近记录: |