SwiftUI SceneStorage, AppStorage概念

 在SwiftUI中,当有轻量级数据需要持久化时,我们可以使用SceneStorage和AppStorage来做存储。

SceneStorage是一个属性绑定器,它可以存在于每一个scene中。它只在Views中能被获取到。

根据下图例子,我们使用SceneStorage需要声明一个唯一的key来代表要存的数据,然后我们可以像使用State一样来使用这个对象,SwiftUI会自动帮我们存储和恢复这个对象。

AppStorage是一个全局的存储,它是使用UserDefaults来做持久化的,所以我们可以在app中任何地方获取使用它。它也是用于轻量级存储,例如app的设置信息。

 根据下图例子,AppStorage也是需要声明一个唯一的key来代表要存的数据。它像其他的属性绑定器一样,可以获取它的binding来使用。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容