和@State的关系
是的,@AppStorage
在内部使用了 @State
的机制,因此它能够自动更新视图。当 @AppStorage
绑定的 UserDefaults 值发生变化时,视图会自动重新渲染。这使得 @AppStorage
非常适合用于持久化的状态管理。
区别:
存储位置:
@AppStorage
直接与 UserDefaults 关联,适合存储持久化数据,而@State
是用于视图内的临时状态。用途:
@State
用于简单的状态管理,通常在视图内部使用,而@AppStorage
用于需要在应用中跨视图或跨启动保持的设置。
两者可以根据需要结合使用,以实现更灵活的状态管理。
Last updated