从基类覆盖的类型与associatedtype一致

时间:2019-05-02 06:51:47

标签: swift generics

让我说我上了这个课:

protocol GenericViewModel {
  associatedtype Model
  associatedtype ViewModel
}

class BaseVc: GenericViewModel {

typealias Model = ModelA
typealias ViewModel = ViewModelA
var baseVm:ViewModel<Model>

}

现在我想使用baseVm属性的其他类型扩展基本vc

class AwesomeVc: BaseVc {

typealias Model = ModelB
typealias ViewModel = ViewModelB

}

预期的结果是,当我键入viewModel时,我应该看到编译器可以识别ViewModelB,实际上,我看到没有办法“ override”中指定的值基类。

我该如何实现这种行为?

0 个答案:

没有答案