Ios swift中使用mvvm模式的web调用函数
我正在尝试使用swift实现MVVM设计模式,但下面提到的几件事我并不清楚 我需要得到花的列表并在tableview中显示它。 我将调用web api,它将提供不同类型花的详细信息。 所以我创建了Flower类(作为模型)和FlowerViewModel类(作为视图模型),ViewController中有tableview 但不确定,我应该将调用web api和解析JSON响应放在哪个类中? 到目前为止,我已经将这两个放置在FlowerViewModel类中 请建议是否需要对这两个功能的放置进行更正,或者我的假设是正确的Ios swift中使用mvvm模式的web调用函数,ios,swift,web,mvvm,Ios,Swift,Web,Mvvm,我正在尝试使用swift实现MVVM设计模式,但下面提到的几件事我并不清楚 我需要得到花的列表并在tableview中显示它。 我将调用web api,它将提供不同类型花的详细信息。 所以我创建了Flower类(作为模型)和FlowerViewModel类(作为视图模型),ViewController中有tableview 但不确定,我应该将调用web api和解析JSON响应放在哪个类中? 到目前为止,我已经将这两个放置在FlowerViewModel类中 请建议是否需要对这两个功能的放置进行
谢谢Web服务API类应该是独立的遵循单一责任原则(SRP),但是调用方或该类的实例应该在视图模型中ViewModel委托服务调用
webapi
,并从解析的响应中,获取将这些项绑定到UITableView
的花列表。这就是我在MVVM
中的实现方式
明确指出:
class FlowerFetcher {
func getFlowers(callback: ([Flowers])->()) {}
}
class FlowerViewModel {
private var flowerService: FlowerFetcher?
init(flowerService: FlowerFetcher?) {}
}