当按照当前的 SwiftUI 语法使用@Published 属性包装器时,似乎很难定义一个包含@Published 属性的协议,或者我肯定需要帮助:)
当我在 View 和它的 ViewModel 之间实现依赖注入时,我需要定义一个 ViewModelProtocol 以便注入模拟数据以轻松预览。
这是我第一次尝试,
protocol PersonViewModelProtocol {
@Published var person: Person
}
我得到“在协议中声明的属性‘人’不能有包装器”。
然后我尝试了这个,
protocol PersonViewModelProtocol {
var $person: Published
}
显然没有用,因为 '$' 是保留的。
我希望有一种方法可以在 View 和它的 ViewModel 之间放置一个协议,并利用优雅的 @Published 语法。非常感谢。