@属性装饰器
@State、@Binding、@ObservedObject、@EnvironmentObject这些都是属性装饰器,就像在java中的注解一样。
熟悉Swift语法的同学,不知在Swift开发过程中,有没有自己封装过
@属性装饰器
呢?若没有,不知有没有使用过
@discardableResult
等这类系统已提供的装饰器呢?有没有想过是如何实现的?其实是通过
@propertyWrapper
来包装的,具体如何包装这里不再赘述,可自行百度,相对比较简单,这里的重点主要介绍以上4个的含义以及使用方式,关于它们的实现原理,会放在下个章节。
@State
/// A property wrapper type that can read and write a value managed by SwiftUI. /// /// SwiftUI manages the storage of any property you declare as a state. When the /// state value changes, the view invalidates its appearance and recomputes the /// body. Use the state as the single source of truth for a given view.
翻译为
/// 一种属性包装器类型,可以读取和写入 SwiftUI 管理的值。 /// /// SwiftUI 管理您声明为状态的任何
版权声明:本文为xinshoubbs原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。