我想创建一个父视图模型,其中包含一些我希望我的所有视图模型在SwiftUI中都拥有的基本内容.我正在try 使父视图模型具有泛型变量,这样我就可以在使用自定义类型创建的任何视图模型中继承ParentViewModel
.
这就是我试过的方法,在loaded
个 case 中得到了Cannot find type 'T' in scope
个错误.我真的不确定我如何才能让它变得通用,这里有什么见解吗?
class ParentViewModel: ObservableObject {
enum Status {
case loading
case loaded(T)
case error(Error)
}
@Published var status: Status = .loading
}
class ChildViewModel: ParentViewModel {
init() {
self.status = .loading
}
init(object: SomeObject) {
self.status = .loaded(object)
}
}